4

私たちは同じファイルのセットに取り組んでいる開発者のグループです。誰もgitcommit-a-mまたはgitcommit-amを実行しないようにしたい

私を含む開発者はこの悪い習慣git commit -am/ -a -mを持っており、毎回コミットされるマシンに固有のconfファイルがたくさんあります。--assume-unchangedを使用するようにすべての人に依頼することはできますが、開発者が-aフラグをまったく使用できないようにしたいです。

これを達成するためになんとかハックできますか?

4

2 に答える 2

5

この問題を別の方法で解決することをお勧めします。

  1. .gitignoreファイルを使用して、コミットしてはならないファイルまたは
  2. pre-commitフックを使用して、-aで作成されたように見えるコミットを自動的に拒否します。

-aフラグを無効にすることを主張する場合:まあ、gitはオープンソースです。-aコマンドラインパラメーターを読み取るコードを見つけて無効にし、再コンパイルするのはそれほど難しいことではありません。しかし、それはgitの新しいバージョンがリリースされるたびにそれをやり直さなければならないことを意味するので、私はそれに対して本当にアドバイスします。

于 2012-09-27T09:40:48.893 に答える
2

コマンドがフラグが設定されているgitかどうかをチェックするラッパースクリプトを作成できます。次に、それをドロップして他のすべてを実際に渡すか、「Bad User!Bad!」というプロンプトを表示します。そのスクリプトを実際のgitパスの前のパスに配置するか、のエイリアスを作成します。commit-agitgitwrap

@PiotrZierhofferはこれを見つけました:

その例はここにあります: gitで-mを無効にします

于 2012-09-27T09:47:33.040 に答える