手机版
你好,游客 登录 注册
背景:
阅读新闻

Git服务器在Ubuntu中的搭建

[日期:2011-05-07] 来源:Linux社区  作者:wirror800 [字体: ]

7. 运行gitosis(当前用户为wirror800)

      (1)将管理员生成的公钥上传或拷贝到服务器上。这里的公钥需要在git服务器管理员下使用ssh-keygen -t rsa命令来创建,

网上流传的方法是scp /your pub_path/id_rsa.pub ${SERVER_IP}:id_rsa.pub。我们这里使用的是直接U盘拷贝的方法。

      (2)初始化gitosis

      进入到拷贝过来的id_rsa.pub所在目录:cd /tmp

      sudo chmod 777 id_rsa.pub

      sudo -H -u git gitosis-init < id_rsa.pub (或者切换到git用户下执行gitosis-init < id_rsa.pub也可以,记得exit切换回当前用户)

      此时,会在/home/git目录下生成一些目录,如果想要别人能够clone gitosis-admin.git,需要执行以下操作:

      sudo chmod 755 /home/git/repositories/gitosis-admin.git/hooks/post-update

 至此,gitosis的安装工作已完成,其相关配置可以有管理员来操作,然后再提交到服务器上。以下是关于gitweb的安装配置,

不需要的同学,请跳过下面的8~10步。

8.安装gitweb (当前用户为wirror800)

   sudo apt-get install gitweb

9.安装apache2

  sudo apt-get install apache2

10.配置gitweb (当前用户为wirror800)
(1)默认没有 css 加载,把 gitweb 要用的静态文件连接到 DocumentRoot 下:
   cd /var/ www/
   sudo ln -s / usr/ share/ gitweb/* .

   (注意后面的点)

(2)修改配置:

   sudo vi /etc/ gitweb.conf

   将 $projectroot 改为gitosis-admin.git所在目录: /home/git/repositories

 (3)修改 /home/git/repositories权限,默认情况下,gitosis将 repositories权限设置为不可读的

    sudo chmod 777 -R /home/git/repositories

11.编辑apache2配置文件,建立web站点 (当前用户为wirror800,默认情况下可以忽略此步骤)

(1) 编辑apache2配置文件

    Ubuntu中默认的web目录是/var/www,默认的cgi目录是 /usr/lib/cgi-bin/,安装完成gitweb后,gitweb的gitweb.cgi会自动放置

到该目录下。如果你的cgi路径不是默认的/usr/lib/cgi-bin/,需要将gitweb安装在/usr/lib/cgi-bin中的gitweb.cgi复制到原来配置

的cgi-bin路径,并修改apache的配置文件/etc/apache2/apache.conf:

    SetEnv  GITWEB_CONFIG   /etc/gitweb.conf
    gitweb.conf配置文件形如:(可自行修改,这里不做详细介绍)
<Directory "/srv/www/cgi-bin/gitweb">          
      Options FollowSymlinks ExecCGI         
      Allow from all                         
      AllowOverride all                      
      Order allow,deny                       

      <Files gitweb.cgi>
           SetHandler cgi-script
      </Files>                   
      RewriteEngine on
      RewriteCond %{REQUEST_FILENAME} !-f
      RewriteCond %{REQUEST_FILENAME} !-d
      RewriteRule ^.* /gitweb.cgi/$0 [L,PT]
</Directory>

(2)重新启动apache:sudo /etc/init.d/apache2 restart,访问http://localhost/cgi-bin/gitweb.cgi

 gitweb

linux
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款