再谈git的http服务
Posted Badwood-涂鸦
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了再谈git的http服务相关的知识,希望对你有一定的参考价值。
因为git服务器搬迁,需要重新安装git服务器,在网上搜索了下,发现之前的方法太复杂,复杂到自己都没彻底弄明白。其实通过git自带的git-http-backend脚本配合apache2的http服务可以更简单的做到。原文请参见:
搭建Git Http服务器和git-http-backend。
主要做法就是配置apache,启用git-http-backend脚本、指明git仓库所在路径、启用用户密码验证。几个步骤如下:
一、准备步骤:
1、找到git安装目录:操作系统是他人安装,git的安装路径只需要先弄清楚。centos的7查找软件安装目录命令如下,路径是/usr/libexec/git-core/git-http-backend:
rpm -ql git | grep git-http-backend
2、找到apache2的配置文件:同样的,系统是别人装的,apache2使用的名字是httpd(不叫apache2),相应的路径在/etc/httpd,包括服务名都是httpd。配置文件可以放在/etc/httpd/conf.d/下,取名为git.conf。不习惯。
3、生成用户鉴权文件,保持原来的不变,文件名git.passwd。使用htpasswd命令生成。
二、apache配置:
新建git.conf,内容如下,其中%repo%是git仓库的根目录,可放多个项目。暂时未发现如何能够修改/var/www为别的。
SetEnv GIT_PROJECT_ROOT /var/www/%repo% SetEnv GIT_HTTP_EXPORT_ALL ScriptAlias /%repo%/ /usr/libexec/git-core/git-http-backend/ <Location /%repo%/> AuthType Basic AuthName "Git Access" AuthUserFile /etc/httpd/conf.d/git.passwd Require valid-user </Location>
三、验证:
1、httpd服务启停
2、生成服务器的test项目
3、客户端验证脚本
以上是关于再谈git的http服务的主要内容,如果未能解决你的问题,请参考以下文章