ブランチの変更をmerge(統合)する~①ファストフォワードマージ~

GitHub

枝分かれした複数の作業ブランチを統合することができるmergeコマンドと

3種類に分類できるマージの中でもファストフォワードマージと呼ばれる方法についてのお話です。

mergeコマンドの種類

git merge ブランチ名

git merge hoge

git merge リモート名/ブランチ名

git merge origin/hoge

マージには3種類ある

マージには下記の3種類があります。今回はファストフォワードマージについてご紹介していきます。

マージの種類
  • ファストフォワードマージ
  • オートマージ
  • コンフリクト
ファストフォワードマージとは

ファストフォワードマージはブランチが枝分かれしないマージのこと。

下記の図にはmainブランチとmainブランチから派生したhogeブランチがある。

mainブランチにはコミット1があり、hogeブランチにはコミットAがある。また、コミットAは親のコミットとしてコミット1を参照している。

hogeブランチで修正を加えて、その修正をmainブランチのコミット1に取り込みたいとした場合にマージを行うと下記の図の通りmainブランチは枝分かれせずにhogeブランチのコミットAを参照するようになる。

ブランチをマージしてみる

ファストフォワードマージを実際に行ってみる。

hogeブランチのindex.htmlの内容を変更する。そしてその修正をmainブランチに取り込む

$ git merge hoge
Updating 22fe50a..124cdf9
Fast-forward     //詳細①
 index.html | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
※コードの見方
黄・・・入力したコマンド
青・・・ログインユーザー
紫・・・コメント
その他・・・コマンドのレスポンス

詳細①
ファストフォワードでマージされていることが記載されている。

タイトルとURLをコピーしました