CentOS搭建GIT服務器【二】-HTTP源碼訪問及smart http協議


搭建完git之后,我們希望可以在線看見源碼,以及使用http協議上傳下載源碼。

安裝gitweb、httpd:

yum install gitweb
yum install httpd

gitweb默認安裝到了/var/www/git下,其配置文件在/etc/gitweb.conf下,另外,httpd的配置文件/etc/httpd/conf.d/git.conf。安裝完可以進去看一眼。

 

修改/etc/gitweb.conf,設置項目路徑:

新增一行:

$projectroot = "/var/www/git" 

如上配置我們准備把倉庫項目通過軟連接到/var/www/git下(也有人把這個目錄鏈接到倉庫中,然后下面因為還有一些css、js、圖片什么的,比較麻煩,這是我們這種方式方便點)

修改/etc/httpd/conf.d/git.conf(這其實是一個apache的配置文件)

Alias /git /var/www/git #別名映射,我們的URL就是http://192.168.x.xx/git/,會訪問/var/www/git這個目錄 <Directory /var/www/git>
  Allow from all
  AllowOverride all
  Order allow,deny
  #open smart http(設置下面的幾行變量,就會打開git自帶的smart http協議,可以通過git clone http://192.168.x.xx/git/bxcs.git這種形式操作)
  SetEnv REMOTE_USER=$REDIRECT_REMOTE_USER
  SetEnv GIT_HTTP_EXPORT_ALL
  SetEnv GIT_PROJECT_ROOT /var/www/git
  Options +ExecCGI
  AddHandler cgi-script .cgi
  DirectoryIndex gitweb.cgi
  SetEnv GITWEB_CONFIG /etc/gitweb.conf
  Dav On
  RewriteEngine Off
</Directory>

重啟httpd:

/etc/init.d/httpd restart

將項目軟連接到apache要訪問的目錄上去:

ln -s /home/git/repositories/gxcs.git /var/www/git/

OK,可以從瀏覽器訪問了了:

http://192.168.x.xx/git/

如果要是不能顯示,一般是倉庫目錄權限問題。

 

smart http方式操作:

git clone http://192.168.x.xx/git/bxcs.git

但是push等操作需要重新配權限,在上面apache配置文件中設置配置文件路徑。

 

 

 

過程中主要參考了如下博文:

http://blog.chinaunix.net/uid-20940095-id-3447022.html

http://hi.baidu.com/configuration/item/8e73c1375536c18af5e4ad89


注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2020 ITdaan.com