紛争状況1
まず、A と B がリモート ウェアハウスから v1 コードを同時にプルし、次に B がまずコードを変更して v3 コードを生成し、正常に送信します。次に、A が v1 コードを変更して v2 コードを生成し、に送信しますorigin/master
が、リモートの最新バージョンは以前の v1 ではなく、ここで競合が発生しています (赤い線で示されています)。
例は次のとおりです
ここで勝利すると、並べ替えアルゴリズムを変更して、大きい順から小さい順に並べ替えることができます。
次に、操作add
を実行しますcommit
が、いいえpush
その後、ubuntu側で次の変更が加えられました
次にadd
、を実行しcommit
、 ubuntuでpush
操作します
現時点では、 Win でpush
操作を行うと競合が発生します。
この時点で、入力はgit pull
ローカル ブランチへのマージに自動的に役立ち、その後master
続行push
できます。
merge
これはアクションであることがわかります
紛争状況2
まずWin側でREADMEファイルを修正します。
ここで勝つadd
とcommit
操作しますが、そうではありませんpush
次に、ubuntu は README ファイル内の同じ場所を変更します。
そして、ここで勝ってpush
再び操作すると、競合が発生します
その後続行しますpull
ただし、このとき、win の変更箇所とプルしたバージョンが同じ場所で変更されるため、競合が発生し、自動的に解決できずmerge
、手動で解決する必要があります。このとき、競合している README ファイルは次のとおりです。
次に、ここで勝利し、紛争を解決するための操作を add
実行しますcommit
push