gitweb

来源:互联网 发布:ibeacon 三角定位算法 编辑:程序博客网 时间:2024/05/16 00:27

gitweb 是用来解析git代码库的,它用git项目用网面的形式来显示。gitweb就是一个cgi,它需要用一个支持cgi的web server来指定它所在的目录为根目录。默认是用apache2作为webserver的。

1、安装apache2及gitweb

$ sudo apt-get install apache2 gitweb highlight

2、配置gitweb
 
    $ sudo vi /etc/gitweb.conf
 
    修改$PROJECT_ROOT为你的项目根目录,比如本例中使用/home/git/repositories作为根目录

 在最后再加上:

    $feature{'highlight'}{'default'} = [1];

3、gitweb.cgi实际上是安装在/usr/share/gitweb目录下。这时修改apache2 配置/etc/apach2/sites-available/default为

---------------------------------------------------------------------
<VirtualHost *:80>
        ServerName gitserver
        DocumentRoot /usr/share/gitweb
        <Directory /usr/share/gitweb>
                Options ExecCGI +FollowSymLinks +SymLinksIfOwnerMatch
                AllowOverride All
                order allow,deny
                Allow from all
                AddHandler cgi-script cgi
                DirectoryIndex index.cgi
        </Directory>
</VirtualHost>
---------------------------------------------------------------------

4、在git组增加一个www-data成员

sudo usermod -a -G git www-data

5、重启动apache2
 
    $ sudo service apache2 restart
 
    这样你就可以在http://ip地址/gitweb.cgi下看到$PROJECT_ROOT下的项目了。
 
6、如果将gitweb.cgi重命名为index.cgi,并在上述配置中修改 DirectoryIndex gitweb.cgi为DirectoryIndex index.cgi,则通过http://ip地址/就可以看到$PROJECT_ROOT下的项目了。
 
7、但是现在gitolite-admin.git会被浏览到,所以可以在git reposities同等目录下,再创建一个gitweb目录,然后把git reposities目录下的项目链接到这里。对于gitolite如果有更好的办法,请您指教。

原创粉丝点击