我登录了我的服务器,并创建了一个git repo:
(参考:http://kb.mediatemple.net/questions/1594/Using+Git)
所以我创建了一个文件夹:
blah.git
然后我做了:
git --bare init
然后我进入了hooks文件夹并更改了更新后的权限。
现在在Windows上本地,我尝试了这个:
git clone http://git.example.com/blah.git
并收到此消息:
在e:/gitTest/blah/.git/中初始化空git:致命:http://git.example.com/blah.git/info/refs未找到,是否在服务器上运行了git update-server-info?
我确实在服务器上运行了该命令。 似乎文件info / refs确实存在,但在它上面做一只猫表明它是空的。
我错过了一步吗?答案 0 :(得分:3)
没有提交,因此,您的服务器的存储库中没有引用。所以,没有什么可以克隆的。
答案 1 :(得分:1)
完整性检查:我假设您的克隆网址中的主机名不是字面意思git.example.com。
协议是HTTP还是HTTPS?如果后者并且您使用的是自签名证书,则需要使用克隆的GIT_SSL_NO_VERIFY
环境变量禁用SSL验证。之后,使用http.sslVerify
将git config
设置为false。
您是否需要向Web服务器提供身份验证凭据?
Git over HTTP是一种痛苦的方式:它是s-l-o-w,错误信息往往对有经验的人来说无益。对于后者的示例,您看到的有关丢失info/refs
的错误可能是身份验证问题。
答案 2 :(得分:1)
这个问题的一个非常简单的解决方案是SCM-Manager。 看看https://bitbucket.org/sdorra/scm-manager