我々は1つの開発ブランチ「A」と2つのサブブランチ「B1」と「B2」(どちらもAから取ったもの)を持っているとします。 B1とB2のプロジェクト全体でフォーマットコードコマンド(ここではReSharperのクリーンアップコード)を実行するとします。Gitマージ操作を行うと、両方のブランチと同じ変更が無視されますか?
これで、B2をB1にマージしようとすると、Gitはのすべてのファイル(このケースではかなりの数)のコンフリクトを報告します。 B1とB2の両方で全く同じ変更が行われたにもかかわらず、Gitは矛盾とみなしているようです。
方法、カスタムドライバ/ git属性などがありますか? B1とB2のファイルがまったく同じ場合、Gitのマージ操作は競合を報告しませんか?
多分私は間違っているかもしれませんが、空白/行末の問題(たとえば、B1とB2の異なる行末)があるかもしれません。その場合、スタックオーバーフローで解決策を見つけることができます。
エディタでファイルを開くと、コンフリクトを調べることができますが、なぜgitにコンフリクトがあるのかを確認できます – CharlesB
リファクタリング以外の作業はどれくらいのブランチで実行されましたか?私はGitのために具体的に話すことはできませんが、一般的には、これを1つのブランチでのみ行い、変更を親にマージしてから、2番目のブランチにそのリファクタを拾います。 – OrionRogue
gitでkdiff3をmergetoolとして使用しようとしましたか?通常、それらの些細な矛盾はそれ自身で処理できます。 – vhallac