Answers:
Gitosis本身没有删除功能,因为它是通过git commits管理的方式。如果您从中删除存储库gitosis.conf
并提交更改,则将无法再访问该存储库。您可以稍后重新启用它,或者最终可以登录到服务器并从gitosis repositories/
目录中删除文件。
我克隆了我的gitosis-admin.git
存储库,并添加了以下内容然后提交:
[group gitosis-admin]
writable = gitosis-admin test1
members = jbouse
然后,我转到主目录并执行以下操作:
mkdir test1
cd test1
git init
git remote add origin git@server:test1.git
echo "Testing" > test.txt
git add test.txt
git commit -m 'First commit'
git push origin master:refs/heads/master
这应该成功推送到服务器,然后我将test1
目录抹去并从gitosis克隆它:
git clone git@server:test1.git
cd test1
echo "Test worked" > test.txt
git add test.txt
git commit -m 'Second commit'
git push
这也应该能成功推送,因此我test1
从gitosis.conf
配置中删除该行并提交更改...然后尝试以下操作:
cd test1
echo "Final test" > test.txt
git add test.txt
git commit -m 'Third commit'
git push
与前两次推送不同,该推送失败并显示以下错误消息:
ERROR:gitosis.serve.main:Repository read access denied
fatal: The remote end hung up unexpectedly
该错误是因为gitosis现在没有为test1
存储库配置任何内容。如果尝试再次克隆存储库,则会收到相同的错误。
您必须登录计算机并在此处删除存储库,然后还必须从gitosis配置文件中删除存储库。