Gitweb安装日记
==============
gitweb 是用来解析git代码库的,它把git项目在网页上显示出来。gitweb就是一个cgi,它需要用一个支持cgi的web server来指定它所在的目录为根目录。默认是用apache2作为webserver的。
一、安装apache2及gitweb
$ sudo apt-get install apache2 gitweb highlight
gitweb.cgi安装位置在/usr/lib/cgi-bin下,实际在/usr/share/gitweb/目录下。
二、配置gitweb
$ sudo vi /etc/gitweb.conf
修改$PROJECT_ROOT为你的项目根目录,比如本例中使用/home/git/repositories作为根目录
最后加上:
$feature{'highlight'}{'default'} = [1];
三、修改/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>
---------------------------------------------------------------------
$ sudo a2enmod cgi
四、在git组增加一个www-data成员
$ sudo usermod -a -G git www-data
五、修改/home/git/.gitolite.rc中的UMASK,将0007修改为0027。
六、重启动apache2
$ sudo service apache2 restart
这样你就可以在http://ip地址/gitweb.cgi下看到$PROJECT_ROOT下的项目了。
七、如果将gitweb.cgi重命名为index.cgi,并在上述配置中修改 DirectoryIndex gitweb.cgi为DirectoryIndex index.cgi,则通过http://ip/就可以看到$PROJECT_ROOT下的项目了。
八、但是现在gitolite-admin.git会被浏览到,所以可以在git reposities同等目录下,再创建一个gitweb目录,然后把git reposities目录下的项目链接到这里。对于gitolite如果有更好的办法,请您指教。
==============
gitweb 是用来解析git代码库的,它把git项目在网页上显示出来。gitweb就是一个cgi,它需要用一个支持cgi的web server来指定它所在的目录为根目录。默认是用apache2作为webserver的。
一、安装apache2及gitweb
$ sudo apt-get install apache2 gitweb highlight
gitweb.cgi安装位置在/usr/lib/cgi-bin下,实际在/usr/share/gitweb/目录下。
二、配置gitweb
$ sudo vi /etc/gitweb.conf
修改$PROJECT_ROOT为你的项目根目录,比如本例中使用/home/git/repositories作为根目录
最后加上:
$feature{'highlight'}{'default'} = [1];
三、修改/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>
---------------------------------------------------------------------
$ sudo a2enmod cgi
四、在git组增加一个www-data成员
$ sudo usermod -a -G git www-data
五、修改/home/git/.gitolite.rc中的UMASK,将0007修改为0027。
六、重启动apache2
$ sudo service apache2 restart
这样你就可以在http://ip地址/gitweb.cgi下看到$PROJECT_ROOT下的项目了。
七、如果将gitweb.cgi重命名为index.cgi,并在上述配置中修改 DirectoryIndex gitweb.cgi为DirectoryIndex index.cgi,则通过http://ip/就可以看到$PROJECT_ROOT下的项目了。