0

共有ホスティングアカウントでSSHを介して実行されるBASHシェルスクリプトを作成して、gitWebサイト制御システムを自動化しようとしています。詳細は次のとおりです。

http://danielmiessler.com/study/git/#website.

これまでのところ、私のbashスクリプトは上記の記事のすぐ外にあります。

cd ~/mydomains; mkdir $name.git;
cd ~/mydomains/$name.git; git init --bare; 
/bin/vi ~/domains/$name.git/hooks/post-update

最初の2行は期待どおりに機能します。

3行目を追加すると、スクリプトがフリーズするようです。私の環境では、viへのパスは/ bin/viです。

記事から直接、次のことを実行してほしい:

vi /path/website.git/hooks/post-update

次に挿入します:

GIT_WORK_TREE=/path/htdocs git checkout -f

次に、ファイルを閉じます。

誰かが私に今何をすべきかについていくつかのアドバイスを提供できますか?

4

2 に答える 2

3

ファイルに行を追加するためだけにスクリプトでviを使用しようとするのはなぜですか?問題は、viがインタラクティブであるということですが、これを自動化する方法を探しています;-)

あなたは使用する必要があります

echo "GIT_WORK_TREE=/path/htdocs git checkout -f" >> ~/domains/$name.git/hooks/post-update
于 2013-03-22T14:12:57.007 に答える
1

gitが使用する前に、フックスクリプトを実行可能にする必要があると思います。

chmod +x /path/website.git/hooks/post-update

その後、プッシュした後、スクリプトを実行する必要があります。

于 2013-03-22T14:15:03.850 に答える