プロジェクトの開発チームは、コードの過程で一緒に働くために競合は避けられない、今日は競合を解決するための実用的かつ効率的な方法を共有したいと思います。
シナリオ
uatから2本の同じ枝を切り出し、それぞれchangeA、changeBと名付け、A、Bで展開します。
どちらもそのブランチのクラスの末尾にカスタムメソッド changeA() と changeB() を追加しており、コミットをマージする際に changeA ブランチを先にマージして changeB を後からマージしても、あるいはその逆でも、最後にマージされた方は必ず衝突にぶつかります。
食器洗い大作戦
まずchangeBブランチをuatにマージし、次にchangeAをマージしたとします。
写真の通り:
ステップ01
赤いボックスをダブルクリックして、マージインターフェイスを表示します。
Step02:
実際のコード・ロジックに基づいて競合を解決します。図のように、Apply をクリックします。
戦いの後、次は通常のgitのコミットプロセスを通過することができ、コミット、プッシュ、この時点で追加の紛争解決のコミットの元の基礎になります。
SVNやGitのコマンドラインでコンフリクトを解決する方法と比べると、IDEAは驚くほど効率的にコンフリクトを解決します。
作者のIDEAはIntelliJ IDEA 2019.1.3 x64版です。