動画: マージとリベースの競合を解決する
動画は YouTube のプレーヤーでプライバシー強化モードで再生されます。
- 7 分の動画
- 英語ナレーション · English and Arabic 件のキャプション
- YouTubeで見る
マージとリベースで競合する同じ見出しを解決し、「私たちのもの」と「彼らの」がそれらの間で入れ替わる理由を確認し、意図的に結合された 1 つの結果を保存し、どちらの人のアイデアも失わずに各操作を完了します。
レッスン全体を読む
この記事には、ビデオのすべての手順とコマンド、演習、質問が記載されています。
ビデオトランスクリプト
ビデオのナレーションが次々と流れます。
- 競合はエラーではありません。それは あなただけが答えられる質問。
- 2 人が同じ行を変更しました 同じファイル。
- サラは見出しを 1 つ書きました。 Omar wrote もう一つ。どちらも同じページから始まりました。
- Git はどの行が勝つかを推測できないため、 立ち止まって尋ねます。
- まず、Sara と Omar のブランチを構築します。 そして同一のコピーが 2 つあります。
- 最初のコピーではマージします。 In the second, we rebase.
- Sara のブランチでマージ コピーを開きます。
- Omar のブランチを右クリックし、そのブランチを選択します Merge command.
- ダイアログにはすでに警告が表示されています: これは停止します 1 つのファイルに競合があります。
- 「常にマージコミット」を選択し、「マージ」を選択します。 一度。予想通り止まります。
- バナーには 1 つの競合が表示されます。 Continue is まだ利用できません。
- [解決] を選択し、index.html を開きます。
- 2 つの側面: Sara のブランチは現在、 オマールが到着します。
- Show Base は共通の祖先を明らかにします。 変更前のページ。
- 次に出力を編集します。見出しを次のように置き換えます 意図的な一行。
- 保存して解決済みとしてマークします。 Only now does Git ファイルを解決済みとして扱います。
- バナーに戻り、「続行」を選択します。の マージが終了します。
- 新しいコミットには 2 つの親があり、 結合された見出し。
- これで、リベースのコピーもサラのものになります 枝。
- Omar のブランチを右クリックし、リベースします サラのブランチです。
- オプションをオフのままにし、一度リベースします。それ 競合で停止します。
- ラベルを見てください。現在、オマールの支店は the one we rebase onto.
- Sara のコミットが再生されます。 役割が入れ替わりました。
- 同じ解像度: 出力を編集して保存 解決済みとしてマークし、続行します。
- Sara のコミットは上に再作成されます オマールのもの、同じ見出しです。
- ターミナルで、マージされていないエントリをリストします。 停止したマージの。
- ステージ 2 は私たちのものです。サラのヘディングです。ステージ 3 つは彼らのもので、オマールのものです。
- 停止したリベースのステージ 2 と 3 その逆です。
- 修正後は何もマージが解除されず、 ステータスは空です。
- マージ コピーのチップには 2 つの親があります。の rebase コピーのヒントには 1 つあります。
- 入力を変更します。マーカーを削除し、 保存しますが、解決済みとしてマークしません。
- Git にはまだ 3 つのステージが表示されるため、続行します 利用できないままになります。
- 立ち往生?中止するとブランチが元の場所に戻ります the operation began.
- GitTree は最初に回復スナップショットを保存します。 したがって、中止しても安全です。
- 決して自分の前の一方からすべてを奪ってはいけません 両方のバージョンを読んでください。
- 練習: 両方の舞台での役割を証明する コピーして、両方を終了します。
- 次に、操作を続行、スキップ、または中止します それは止まってしまった。