我按照本教程在我的家庭服务器(ubuntu 10.10 服务器版本)上安装了 gitosis:https://help.ubuntu.com/community/Git。由于它不起作用(证书命名方面的问题),经过大量调整后,我终于让它正常工作了。我添加了测试项目,一切正常。现在我想添加一个我要使用的正确项目,但我收到此错误(测试项目仍然有效):ERROR:gitosis.serve.main:Repository read access denied
这是我的 gitosis.conf(已提交并推送):
[gitosis]
[group realproject]
writable = realproject
members = teun@TEUN-PC
[group testproject]
writable = testproject
members = teun@TEUN-PC
[group gitosis-admin]
writable = gitosis-admin
members = teun@TEUN-PC
为了创建“realproject”,我随后使用了以下命令(在我的 PC 上):
mkdir realproject
cd realproject
git init
touch README
git add .
git remote add origin [email protected]:realproject.git
git commit -m "Added README"
git push origin master
之后我收到错误。当我在 /srv/gitosis/repositories/ 中查看服务器时,realproject.git 不存在,但其他 2 个项目存在。我希望有人能帮助我解决这个问题?
编辑:在 [gitosis] 下添加 loglevel=DEBUG 以测试是否看到错误后,它突然又恢复了。现在我不知道这是怎么可能的,所以我保持这个问题开放,看看是否有人知道我刚才是怎么做到的。
答案1
以下是尝试弄清楚发生了什么事情。
当您将新内容推gitosis.conf
送到服务器时,它会更新目录中本地签出的版本gitosis-admin
。可能由于某些未知原因,此文件未正确更新。因此,原始存储库运行良好,而新存储库则不能。然后,当您推送日志级别更改时,配置已正确更新。
您可以随时通过查看符号链接来检查当前 gitosis 的配置/srv/gitosis/.gitosis.conf
,因此如果您再次遇到此问题,我建议您先检查配置。