私は、フルプログラムが問題なく動作しているように見えるにもかかわらず、わずかなエラーがセキュリティ上の問題を引き起こす可能性があるという意味で脆弱なファイルがいくつかあります。結果として、私はgitがマージ中の自動修正の結果を常に検証するようにしたい。Git:「インタラクティブマージ」のリクエスト方法は?
私が正しく理解していれば、カスタムマージドライバは私が欲しいものです。私が理解した最高ののは、通常のマージ結果を取得するためにカスタムマージドライバでgit-merge-fileを使用し、結果を常に競合するものとしてマークするために終了することです。この方法でgitはマージ中に停止し、マージを完了する前にマージ結果を調べることができます。
しかし、そのファイルへの期待される変更は非常に少なく、 "git add -i"に似た何かを実行し、 "patch"を選択して一度に1つのハンクを適用するのが最善の方法です。
"git add -i"のように動作するマージドライバを、そのファイルへのすべてのマージのための簡単な方法がありますか?(適用する可能性のある塊は自動マージの結果です)?
また、正しく理解していれば、ファイルレベルの競合に対してのみマージドライバが呼び出されます。特別にマークされたファイルについて同様の手動検証を要求することは可能ですか?私はマージを行う前にgitattributesで新しいファイルを "壊れやすい"とマークし、次にいくつかのgitマージマジック(またはフィルタマジック)は私に、新しい特別なファイルがマージされたブランチに対しても問題ないことを確認するよう要求します。
マージの差分を確認するのはなぜですか? – Mat
私はそのようなマージが起こったときに自動リマインダーを持っていたいと思います。通常、マージ結果は自動テストおよび/またはビルドでテストできますが、壊れやすいものについては、確認のために追加のレビューが必要です。そのような特別なファイルに触れるものをチームメンバーがマージするたびに、そのようなレビューを強制したいと思います。 –