gitプッシュコードの競合解決

紛争状況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ファイルを修正します。

ここに画像の説明を挿入

ここで勝つaddcommit操作しますが、そうではありませんpush

ここに画像の説明を挿入

次に、ubuntu は README ファイル内の同じ場所を変更します。

ここに画像の説明を挿入

そして、ここで勝ってpush再び操作すると、競合が発生します

ここに画像の説明を挿入

その後続行しますpull

ここに画像の説明を挿入

ただし、このとき、win の変更箇所とプルしたバージョンが同じ場所で変更されるため、競合が発生し、自動的に解決できずmerge、手動で解決する必要があります。このとき、競合している README ファイルは次のとおりです。

ここに画像の説明を挿入

次に、ここで勝利し、紛争を解決するための操作を add実行しますcommitpush

ここに画像の説明を挿入

おすすめ

転載: blog.csdn.net/qq_42120843/article/details/130968856