gitweb
可以通过搭建git服务器将代码保存在git服务器上,多个开发者可以从服务器上clone代码,也可以各自维护一份本地代码,在本地更新之后可以提交到git服务器上,提高开发效率。 git可以很方便的在服务器上创建一个版本库,然后供各个客户端提交、拉取代码,见; 但是链接中的方式不支持网页的方式查看远程版本库的内容,这样如果想要查看版本库中代码,只能git 拉取到本地再用编辑器打开,非常不方便。因此考虑搭建一个git 的web服务器,支持在web页面上查看代码。 gitweb就是支持网页查看git版本库中代码的工具。
搭建Apache
gitweb是基于http服务工作的,因此需要先在服务器上搭建http服务。考虑使用apache。 具体步骤,见
搭建gitweb
1. 安装gitweb # yum install gitweb
2. 配置gitweb (1) 配置 /etc/gitweb.conf 文件: 在默认的文件末尾添加:
$projectroot = '/home/git/gitweb'; #gitweb展示的那些代码库的根目录
(2) 配置 /etc/httpd/conf.d/git.conf,如下:
Alias /gitweb /var/www/git SetEnv GITWEB_CONFIG /etc/gitweb.confOptions ExecCGI FollowSymLinks SymLinksIfOwnerMatch AllowOverride All order allow,deny Allow from all AddHandler cgi-script cgi DirectoryIndex gitweb.cgi
其中, Alias /gitweb /var/www/git 是指示apache服务器在接收到 的请求之后,转向 /var/www/git 目录; SetEnv GITWEB_CONFIG /etc/gitweb.conf 指示gitweb使用配置文件 /etc/gitweb.conf (就是第一步配置过的,里面指定了版本库的根目录) < Directory /var/www/git> 中的部分指示了 /var/www/git 目录( 转到的目录)的一些性质。
(3) 添加代码库到gitweb指定的代码库根目录下:
假设已经存在了一个版本库 /home/git/repos/DataExchange.git,可以拷贝或者软链接: cp -r /home/git/repos/DataExchange.git /home/git/gitweb/DataExchange 或 ln -s /home/git/repos/DataExchange.git /home/git/gitweb/DataExchange
(4) 确保 apache用户(在httpd.conf中配置的用户)具有访问 gitweb指定代码库的权限
比如, /home/git/gitweb 属于git用户和git组。可以将apache用户添加到 git组中:
usermod -a -G git apache