ホームページ > ウェブフロントエンド > CSSチュートリアル > 紛争の合併:彼らは何であり、どのように対処するか

紛争の合併:彼らは何であり、どのように対処するか

尊渡假赌尊渡假赌尊渡假赌
リリース: 2025-03-18 09:31:10
オリジナル
281 人が閲覧しました

紛争の合併:彼らは何であり、どのように対処するか

この記事では、「Advanced Git」シリーズを継続しています。 TwitterでTowerをフォローするか、将来の記事の最新情報についてはニュースレターを購読してください。

競合のマージ:GITユーザー、特に協力しているユーザーにとって一般的なフラストレーション。しかし、彼らは見た目よりも困難ではないことがよくあります。この記事では、彼らの原因、性質、解決を説明しています。

高度なGitシリーズ:

  1. パート1: gitコミットのマスター
  2. パート2:効果的なGit分岐戦略
  3. パート3:プルリクエストとのコラボレーションの合理化
  4. パート4:マージの競合に取り組む(あなたはここにいる!
  5. パート5:リベースvs.マージ:比較分析
  6. パート6:インタラクティブなリベースの力
  7. パート7:チェリーピッキングコミット:選択的アプローチ
  8. パート8:失われた失われたリフレグとのコミットメントの回復

競合の合併の理解:原因と発生

さまざまなソースからの変更を現在のブランチに統合すると、競合が発生します。これは、ブランチのマージに限定されません。リベース、チェリーピッキング、 git pull 、または隠し再適用でさえ、すべて競合を引き起こす可能性があります。すべての統合が紛争につながるわけではありませんが、矛盾した変更が存在すると紛争が発生します。

Gitの合併腕前は重要な強みです。ほとんどの統合を自動的に処理します。ただし、競合の変更(たとえば、同じコードラインが2つのコミットまたはあるブランチで変更され、別のブランチで削除されたファイルが異なる方法で変更された場合、曖昧さを解決するために人間の介入が必要です。

競合をマージすることを認識します

GITは明らかに競合をマージします。障害のあるマージまたはレベーゼは、端末ですぐに報告されます。

 <code>$ git merge develop CONFLICT (content): Merge conflict in index.html Automatic merge failed; fix conflicts and then commit the result.</code>
ログイン後にコピー

このメッセージを見逃したとしても、 git status競合を強調します。タワーのようなGit GUIは、競合を見落とさないように視覚的な手がかりを提供します。安心して、Gitはマージの競合を逃すことを困難にします。

マージの競合を元に戻します

マージ競合を無視することは選択肢ではありません。対処する必要があります。 2つの選択肢があります。紛争を解決するか、それを引き起こしたアクションを元に戻します。

しばしば、元に戻すことは、 --abortパラメーター(例えば、 git merge --abortgit rebase --abort )を使用して簡単です。これにより、マージ/リベースが逆転し、紛争前状態が復元されます。これは、ファイルの解決を開始しても機能します。いつでも中止して再起動できます。

マージ紛争の解剖学

競合するindex.htmlファイルを調べましょう。

gitは、 での競合するセクションをマークします。このマーカーの後のコンテンツは、現在のブランチ(ヘッド)からのものです。 <code>=======競合する変化を分離し、その後、他のブランチからの変更(例えば、 develop )を分離し、 でマークされます。

あなたのタスクは、テキストエディター、IDE、GIT GUI、またはマージツールを使用してファイルを編集して、競合を解決することです。

マージの競合を解決します

解像度の方法 - テキストエディター、IDE、GUI、またはマージツール - は重要ではありません。最終ファイルは、目的の状態を反映する必要があります。単純な競合には、変化の破棄が含まれる場合があります。より複雑な競合では、どの変更を維持するか、それらを組み合わせる方法を決定するためにコラボレーションが必要になる場合があります。

手動編集は可能ですが、専用のツールはしばしばプロセスを合理化します。 GIT GUIは視覚的な競合解決補助補助具を提供します。マージツールは、高度なDIFF表示と比較機能(並べ、並べ替えのビューなど)を提供します。 git configを使用して優先ツールを構成し、 git mergetoolで呼び出します。

競合を解決し、変更をステージングした後( git add<filename></filename> )、通常どおり変更をコミットします。

慌てないで!

マージ競合は管理可能です。原因を理解することで、紛争を取り消すか解決することができます。間違いでさえ可逆的です。紛争前のコミットに戻して、もう一度やり直してください。

高度なGitをより深く掘り下げるには、分岐、インタラクティブなリベース、リフェログ、サブモジュールなどに関するビデオを使用して、無料の「高度なGitキット」を探索してください。

高度なGitシリーズ:

  1. パート1: gitコミットのマスター
  2. パート2:効果的なGit分岐戦略
  3. パート3:プルリクエストとのコラボレーションの合理化
  4. パート4:マージの競合に取り組む(あなたはここにいる!
  5. パート5:リベースvs.マージ:比較分析
  6. パート6:インタラクティブなリベースの力
  7. パート7:チェリーピッキングコミット:選択的アプローチ
  8. パート8:失われた失われたリフレグとのコミットメントの回復

以上が紛争の合併:彼らは何であり、どのように対処するかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート