轉:基於http方式的git服務器搭建

1.安裝git

[html] view plain copy
 在CODE上查看代碼片派生到我的代碼片
  1. sudo apt-get install git git-core  

2.配置git的http代理

①安裝apache

[html] view plain copy
 在CODE上查看代碼片派生到我的代碼片
  1. sudo apt-get install apache2 apache2-utils  

②激活下面的模塊

[html] view plain copy
 在CODE上查看代碼片派生到我的代碼片
  1. sudo a2enmod cgi alias env rewrite  

③修改apache的配置文件

[html] view plain copy
 在CODE上查看代碼片派生到我的代碼片
  1. sudo vi /etc/apache2/sites-enabled/000-default.conf  

之後往裏面加入如下內容

[html] view plain copy
 在CODE上查看代碼片派生到我的代碼片
  1. SetEnv GIT_PROJECT_ROOT /var/www/html/git  
  2. SetEnv GIT_HTTP_EXPORT_ALL  
  3. ScriptAlias /git/ /usr/lib/git-core/git-http-backend/  
  4.    
  5. RewriteEngine On  
  6. RewriteCond %{QUERY_STRING} service=git-receive-pack [OR]  
  7. RewriteCond %{REQUEST_URI} /git-receive-pack$  
  8. RewriteRule ^/git/ - [E=AUTHREQUIRED]  
  9.    
  10. <Files "git-http-backend">  
  11.     AuthType Basic  
  12.     AuthName "Git Access"  
  13.     AuthUserFile /var/www/html/.htpasswd(此處位置與下文創建用戶驗證一致)  
  14.     Require valid-user  
  15.     Order deny,allow  
  16.     Deny from env=AUTHREQUIRED  
  17.     Satisfy any  
  18. </Files>  

④創建用戶驗證

[html] view plain copy
 在CODE上查看代碼片派生到我的代碼片
  1. sudo htpasswd -c /var/www/html/.htpasswd zwj(用戶名)  
  2. 首次添加的時候要加-c選項,之後添加的時候去掉-c選項,不然會將原有的賬戶刪除  


(1)進入部署web項目的目錄,如/var/www/html/


(2)新建git文件夾

[html] view plain copy
 在CODE上查看代碼片派生到我的代碼片
  1. sudo mkdir git  
  2. cd git  

(3)初始化git倉庫

[html] view plain copy
 在CODE上查看代碼片派生到我的代碼片
  1. sudo git init --bare zwj.git (最後面的名字隨意取,爲了命名規範,一般使用.git結尾)  


4.修改/var/www/目錄的所屬者和所有者權限

[html] view plain copy
 在CODE上查看代碼片派生到我的代碼片
  1. chown -R www-data: www-data /var/www/  

5.啓動apache

[html] view plain copy
 在CODE上查看代碼片派生到我的代碼片
  1. sudo service apache2 restart  

根據以上步驟配置好之後,就可以使用http的方式去同步git項目,路徑爲

http://ip/git/zwj.git(最後的名字自行替換成你新建git倉庫時候的名字)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章