gitサーバ管理者視点。
レポジトリのバックアップを取る時等、git pushされたら困る時、
gitolite管理者アカウントの$HOME以下に.gitolite.downファイルを置くと、
ファイルがある間は全てのgit pushが拒否される。
git pushをしようとした側からは.gitolite.downの中身がエラーメッセージとして通知される。
cd $HOME
echo "git server denied your push request as making back up. Sorry!" > .gitolite.down
コミットしてみよう
gitolite@alpha:~/gitolite-admin/conf$ git commit -a
[master 1d1fd5a] removing test project
Committer: gitolite <gitolite@alpha.(none)>
1 files changed, 0 insertions(+), 2 deletions(-)
gitolite@alpha:~/gitolite-admin/conf$ git push
Enter passphrase for key '/home/gitolite/.ssh/id_rsa':
***** ABORTING *****
git server denied your push request as making back up. Sorry!
fatal: The remote end hung up unexpectedly
エラーメッセージfatalの部分はconfusableな気がするけど…。
一応.gitolite.downを消したらちゃんとpushが通る事を確認する。
gitolite@alpha:~/gitolite-admin/conf$ cd ..
gitolite@alpha:~/gitolite-admin$ cd ..
gitolite@alpha:~$ rm .gitolite.down
gitolite@alpha:~$ cd gitolite-admin/
gitolite@alpha:~/gitolite-admin$ git push
Enter passphrase for key '/home/gitolite/.ssh/id_rsa':
Counting objects: 14, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (8/8), done.
Writing objects: 100% (10/10), 1.10 KiB, done.
Total 10 (delta 1), reused 0 (delta 0)
To gitolite@localhost:gitolite-admin
92b183e..1d1fd5a master -> master