我用gitolite设置了git服务器,我已经完成了它。但有一个问题让我失望。我使用ssh
和http
模式设置了gitolite。
我使用gitolite-admin.conf
来控制repo和用户的身份验证。我按照指示:修改conf,git添加它,git提交它和git推送它。但它确实无效。
在客户端我无法克隆我在conf中添加的新回购
这是我的conf
默认回购'测试'正在定期工作
答案 0 :(得分:0)
这是因为gitolite严格尊重gitolite.conf
。您需要在conf文件中指定这些行
repo @all
RW+ = @all
这将允许您对所有回购进行操作。但是,您需要了解在@all
部分中指定repo
时,这意味着每个回购都属于此规则。所以,即使你在文件中有这样的东西:
repo foo
R = xyz
gitolite忽略它,因为它看到回购foo
属于@all
。因此,为了使克隆操作起作用,您需要为所有repos指定READ
权限,如下所示:
repo @all
R = @all
然后你需要将所有权限添加到其他repos,否则你将只被允许阅读其他repos而不是写它们。