welcome to xlongwei.com

欢迎大家一起学习、交流、分享


QQ:9167702333 邮箱:admin@xlongwei.com

git http只读访问出错


分类 Java   关键字 分享   标签 linux   nginx   git   发布 hongwei  1461731501371
注意 转载须保留原文链接,译文链接,作者译者等信息。  
git只读访问支持git协议和http协议,而git协议需要后天运行git-daemon,因此使用nginx提供http协议访问更省资源。但最近总报错:fatal: http://git.xlongwei.com/git/test.git/info/refs not valid: is this a git repository? 查看git仓库发现并没有info/refs文件,后来发现原来是hooks/post-update没配置好。

git仓库创建步骤
git init --bare test.git   #创建裸仓库
chown -R gituser:gituser test.git #修改所有者
chmod -R 777 test.git #全部可读写
cp test.git/hooks/post-update.sample test.git/hooks/post-update

克隆,提交,推送
git clone gituser@xlongwei.com:/soft/gitrepos/test.git   #ssh访问就需要认证权限了
cd test
echo "test" > test
git add test
git commit -m "test"
git push origin master # 只输入git push可能会报错,因此指定将本地的master分支推送到origin远程仓库

只读克隆
cat test.git/info/refs   #这时候就会有内容了
77af59cfb07df4b544c5f5387da24a8abf4b8b96 refs/heads/master

git clone http://git.xlongwei.com/git/test.git # 存在文件info/refs时才能正常克隆,否则报上面的错误
git clone git://xlongwei.com/test.git #需要后台运行git-daemon支持,这个可能会停止服务

评论列表