git diff に問題があります。まずは経緯をおさらいしておきましょう。
私は顧客からあまり人気のないプロジェクトを与えられました。問題は、scm に 2 つのブランチがあることです。これらの 2 つのブランチは長い間マージされていませんでしたが、今ではマージする必要があります。ほとんどの変更は些細なことなので、git によるマージには約 30 分しかかかりません。
しかし、顧客はマージ プロセスを自動化できるとは信じていません。したがって、実行中のコードの 4 つのバージョンすべて (ベースとバージョン a、ベースとバージョン b、a と b など) の違いを示す差分リストを用意して、マージを確認したいと考えています。
これも些細なことですが、ここで問題が発生します。これらとブランチの間には多くの変更があるため、差分リストは非常に長く (それぞれ約 50Mb)、リストは役に立ちません。現在、顧客は変更をグループ化することを望んでいます。
これらの「グループ化された差分」には 4 つの主要なグループがあります。git diff がその時点で個々のグループを無視できるようにしたいと思います。
g1: 方向を変えたスラッシュがたくさんあります。したがって、git に / と \ を同様に解釈してもらいたいと思います。スラッシュが含まれている場合、gitに行全体を無視させる方法を見つけましたが、パス(スラッシュの由来)が変更された可能性があるため、それは私が望むものではありません。
g2: この問題は、より多くのシンボルが含まれていることを除けば、上記の問題と非常によく似た構造的な問題です。変更されたロギングには多くのフォーマットがあります。主にデンマーク文字に関連しており、「æ」は「& aelig;」に、「ø」は「& oslash;」に変更されています。等
g3: 多くのコメントが変更されました。一部の「*/」がマージされていないのではないかと顧客は心配しています。これを確認する方法がわかりません。あなたの専門家の中にアイデアがありますか?
g4: 上記以外のすべて。これは実際の変更と見なされます。