centos 安装http协议的git server
1、服务器端安装httpd,git,gitweb等
|
1
|
#yum install httpd git git-daemon gitweb |
2、服务器端初始化仓库
|
1
2
3
|
#mkdir -p /data3/gitserver#cd /data3/gitserver#git init --bare git_repo #初始化一个裸仓库 |
3、向裸仓库提交初始文件
|
1
2
3
4
5
6
7
|
#cd /tmp#git clone /data3/gitserver/git_repo#cd git_repo#touch MD#git add MD#git commit -m "init readme txt" MD#git push origin master |
4、建立smart http协议,用户可以用http协议访问git仓库
|
1
2
|
#cd /etc/httpd/conf.d#vim git.conf |
添加如下配置文件
|
1
2
3
4
5
6
7
8
9
10
|
ScriptAlias /gitserver/ /usr/libexec/git-core/git-http-backend/ <Directory "/usr/libexec/git-core/"> SetEnv GIT_PROJECT_ROOT /data3/gitserver SetEnv GIT_HTTP_EXPORT_ALL SetEnv REMOTE_USER=$REDIRECT_REMOTE_USER Options +ExecCGI Order allow,deny Allow from all</Directory> |
5、配置gitweb信息,可以用web访问git仓库;
|
1
|
#vim /etc/gitweb.conf |
输入git仓库的路径
|
1
2
3
4
|
# Set the path to git projects. This is an absolute filesystem path which will# be prepended to the project path.#our $projectroot = "/var/lib/git";$projectroot = "/data3/gitserver"; |
6、重启 httpd
|
1
2
|
#chkconfig httpd on#service httpd start |
7、查看git仓库
http://ip_address/git
8、clone git 仓库
|
1
|
git clone http://ip_address/gitserver/git_repo |
9、如果push失败 ,到服务器作如下操作
|
1
2
3
4
|
#git push origin master#如果git push 失败#cd /data3/git_server/git_repo# git config daemon.receivepack true
|
如果gitweb提示找不到项目,则可能是/usr/local/gerrit/git这个目录权限不够
配置支持gerrit
1、编辑配置文件
vim /data/gerrit/etc/gerrit.config
添加
[gitweb]
cgi = /var/www/git/gitweb.cgi
2、重启gerrit

浙公网安备 33010602011771号