回答:
Gitosis自体は、gitコミットを介して管理されるため、削除機能はありません。からリポジトリを削除し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
前の2つのプッシュとは異なり、これは次のエラーメッセージで失敗します。
ERROR:gitosis.serve.main:Repository read access denied
fatal: The remote end hung up unexpectedly
エラーは、現在gitosisでtest1
リポジトリ用に設定されているものがないためです。リポジトリのクローンを再度作成しようとすると、同じエラーが発生します。
マシンにログインし、そこでリポジトリを削除する必要があります。次に、gitosis構成ファイルからリポジトリを削除する必要もあります。
Jeremy Bouseの答えは良い戦略ですが、実際にはリポジトリを削除しません。ディスク容量、セキュリティなどのために、リポジトリを削除する必要がある場合があります。
だから私はultrafeddeの方法をお勧めします。それに加えsu
て、セットアップした「git」ユーザーが所有しているリポジトリを削除する必要があるでしょう。