gitweb安装

gitweb安装:

1. 简介

Gitweb提供了git版本库的图形化web浏览功能。可以到网站http://git.kernel.org/体验下效果,如下图所示。

技术分享

Gitweb界面

       它既可以通过配置架设于web服务器上,也可以无须任何配置针对单独git版本库即时启动。Gitweb支持多个版本库,可以对版本库进行目录浏览(包括历史版本),可以查看文件内容,查看提交历史,提供搜索及RSS feed支持,也可以提供目录文件的打包下载等。

2. 架设于本地版本库的Gitweb

centos6.5首先请安装:
yum install -y perl-BerkeleyDB perl-Class-Singleton perl-Convert-BER perl-DateTime perl-DateTime-Format-DateParse perl-DateTime-Locale perl-DateTime-TimeZone perl-DBIx-TableHash perl-List-MoreUtils perl-Net-MAC-Vendor perl-Params-Validate  perl-rrdtool perl-SNMP-Multi  perl-SNMP-Simple perl-String-CRC32 perl-Unicode-Map perl-XML-DOM perl-XML-RegExp  rrdtool perl-XML-Parser  perl-Compress-Zlib perl-Time-HiRes perl-CGI
 

如果想在本地版本库看看自己项目的效果,不妨用Git 自带的一个命令,可以使用类似lighttpd这样轻量级的web服务器启动一个临时进程。如果是在Linux 主机上,通常都预装了lighttpd (可到http://www.lighttpd.net下载源码进行安装),无须任何配置,可以git工作区中键入以下命令来启动。

$ git instaweb

这会在1234端口开启一个HTTPD 服务,随之在浏览器中显示该页,十分简单。关闭服务时,只需在原来的命令后面加上--stop 选项就可以了:

$ git instaweb –stop

3. 架设于服务器上的Gitweb

3.1. 使用git源码安装

       Gitweb的代码位于git的源码库中,如果是从源码进行安装的,那么gitweb应该已经安装好了。通过下面的命令可以查看Gitweb的安装位置:

$ [root@bogon /]# ls -F $(dirname $(dirname $(git --html-path)))/gitweb

$ gitweb.cgi*  static/

$ [root@bogon /]# echo $(dirname $(dirname $(git --html-path)))/gitweb

/usr/local/share/gitweb

Apache的配置文件中添加如下配置,重启Apache后,即可用地址http://server/gitweb来访问git服务。(注意:你的linux系统gitweb的安装路径可能与我不同)

Alias /gitweb "/usr/local/share/gitweb/"

 

<Directory "/usr/local/share/gitweb">

    Options FollowSymLinks +ExecCGI

    AddHandler cgi-script .cgi

    DirectoryIndex index.cgi gitweb.cgi

    Order allow,deny

    Allow from all

</Directory>

3.2. Gitweb的配置

编辑/etc/gitweb.conf(如果没有就新建),按如下配置即可:

# 版本库的根目录

$projectroot = "/path/to/repos";

 

# 设置克隆每个版本库的URL地址,一个版本库可以设置多个地址

@git_base_url_list= ("git://192.168.1.101/git", "http://192.168.1.101/git");

 

# 菜单定制:tree view文件旁显示追溯(blame)链接

$feature{‘blame‘}{‘default‘} = [1];

$feature{‘blame‘}{‘override‘} = 1;

 

# 菜单定制:tree添加快照(snapshot)下载链接

$feature{‘snapshot‘}{‘default‘} = [‘zip‘, ‘tgz‘];

$feature{‘snapshot‘}{‘override‘} = 1;

gitweb博大精深,也可以定制首页模板,有兴趣再研究,可查看git gitweb --help帮助手册。

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。