Maven によって構築された多数の Java プロジェクト (約 20 程度) を含むリポジトリがあります。
リポジトリにはpatch
、minor
、 の 3 つのブランチがありmajor
ます。
の場合ProjectA
、ブランチのpom.xml
およびは に設定さMANIFEST.MF
れ、patch
ブランチでは に設定され1.3.7
、 では に設定minor
されます。1.4.0
major
2.0.0
問題点は次のとおりです。ブランチからのリリースを実行するときに、その新しいタグ ( ) をおよびブランチpatch
にマージする必要があります。projecta-1.3.7
minor
major
.java
問題は、パッチ ブランチで1 つのファイルのみを変更した場合でも(たとえば、それが重大なバグ修正だったとします)、すべてpom.xml
のおよびMANIFEST.MF
ファイルの競合を確認して解決する必要があることです。したがって、この:
git checkout minor
git merge projecta-1.3.7
その結果minor
、バグ修正が行われますが (うわー!)、パッチ バージョンを使用しているすべてのプロジェクトとマイナー バージョンを使用しているプロジェクトの間の競合を調べて比較する必要があります。projecta-1.3.7
minor
マージ コマンドの一部として、 Git に、両方に「私たちの」戦略を使用したいpom.xml, MANIFEST.MF
が、他の競合はデフォルトの戦略を使用して解決する必要があることを伝える方法はありますか?