4

pre-commitフック中にソースファイルから開発コードをスクラブするのは良い形式ですか?

たとえば、xdebug_break()を呼び出すコードがあり、その関数の呼び出しを、その関数を含むすべてのファイルから削除してから、コードをリポジトリにコミットします。関数を呼び出す前に関数をチェックしたくないのは、そこで関数を呼び出すのは私だけだからです。

4

2 に答える 2

13

pre-commitフックは、コミットを変更するためではなく、コミットをチェックするためにのみ使用する必要があります。したがって、これを使用して、コミットに不要なコードが含まれているかどうかを確認し、含まれていない場合はコミットを中止できますが、コミットを変更するために使用しないでください。

フィルタ属性を使用してプログラムを実行し、ソースがコミットされる前にソースを「クリーン」にすることができます。しかし、私はこれに反対することをお勧めします。ソースコードの行を削除すると、プログラムの動作が変わる可能性があります。テストしていない作業を、コミットしている形式でコミットしないでください。

于 2010-01-13T20:39:02.540 に答える
0

コミットする前に、precommitフックでコードを変更してもかまいません。たとえば、開発チームはprecommitフックを使用して、そのチームのコーディング規則を自動的に適用するようにコミットされたコードを自動的に再フォーマットする場合があります。

コメントに基づいて、私は答えを変更しています-svnマニュアルでは、クライアント側のキャッシュを台無しにする可能性があるため、コミットの内容を変更しないことを特に推奨しています。リポジトリがローカルであるため、Gitの動作は異なりますが、原則は同じだと思います。

あなたが言及した特定のユースケースについては、そのためにprecommitフックを使用するのは少し型破りなようです。通常、precommitフックはより一般的な目的で使用されます。とは言うものの、あなたが唯一の開発者であれば、好きなように自由に使用できます。そこにあることを忘れないでください。

于 2010-01-13T20:59:12.277 に答える