前の質問への回答に続いて、作業ディレクトリが更新されるたびに起動する必要がある Git フック スクリプトを実装しました。このスクリプトを .git/hooks の以下にリンクしました。
- チェックアウト後
- ポストコミット
- マージ後
これはほとんどの場合機能しますが、常に機能するとは限りません。私が見つけた1つのケースはgit stash
. git update-index --assume-unchanged
変更をチェックインしたくない (空のバージョンがチェックインされる) ことを Git に伝えるために、 でマークしたテキスト ファイルをフックが生成するため、これは問題です。ただし、git stash
は未変更のファイルを (空のファイルに) 戻します。これは、フックを再度実行する必要があることを意味しますが、フックは の後に呼び出されませんgit stash
。
同様の問題が存在する可能性があると思われgit rebase
ますが、それを説明するのは簡単ではありません。
作業ディレクトリの更新後に Git が常に実行するフックが必要です。これは可能ですか?