Git branch・mergeについてイラスト付きで説明


こんにちは、まゆみです。

今回の記事では、Gitで使うbranch について書いていきます。

branch = 枝

という言葉が示している通りbranchとは

今取り組んでいるプロジェクト(メインブランチ)から枝分かれさせ、新しい枝を作ることができる機能です。

その枝分かれさせたbranchのコードが上手く実行されるかどうか?を確かめて全てが上手くいくと分かった後、メインのプロジェクトに戻すことができます

イラストにすると下記のようになります

枝分かれさせたbranch は

  • メインのbranch と同時に並行してコードを書き換えることができるし
  • 書き換えたあとのコードを試してからメインのbranch と一緒にする(merge)ことができます

ではさっそくbranch の使い方を見ていきましょう

branchの使い方

branch を作ってみる

コマンドラインに

git branch 好きなbranch名

と入力すると、メインのbranch から枝分かれした新しいbranch を作ることができます

次に

git branch 

とコマンドラインに入力すると、今自分が

メインのbranch にいるのか?

または新たに作ったサブのbranch にいるのか?

を確かめることができます

今回、例としてseparate-file というbranch をメインとは別に作ってみました。

git branch で確かめると、master の前に*がついているのが確認できると思います

これは、今あなたはまだメインのbranchで作業をしているということを示しています。

新たなbranchに移動する

今、あなたはメインのbranchの方にいるので新たなbranch の方に移動しましょう

git checkout 新たなbranch名

エンターキーを押した後、コマンドラインに

『Switched to branch "branch名"』と表示されれば、OKです。

実験してみよう

コマンドラインに『git checkout (branch名)』とうつと、メインのbranch とサブで作ったbranch を行き来できることが分かりました。

では、サブで作ったbranchの中にあるファイルを開いて、ファイルの中のコードやテキストを変えてみましょう。

そして『git checkout master』でメインのbranchに戻りファイルを開いてみてください。

以前のままファイルの内容は変わっていないはずです。

サブのbranchで書き換えた内容が気に入った!

サブのbranchで書き換えたコードが上手く実行された!

ではそれをメインのbranchと一緒にしたいですよね。

①コマンドラインに『git checkout master』と打ち込みメインのbranchにスイッチさせる

②『git merge (メインbranchと一緒にしたいサブbranch 名)』とコマンドラインに打ち込み、サブのbranchをメインのbranchと一緒にする

merge が成功すると下記のように表示されます。(ちなみに私はWindows を使っています)

※merge が終わったあとも、サブのbranch は消えません。

GitHubにアップロードする

書き換えたファイルをGitHubにアップロードしましょう

git push origin master -u

(GitHubへのアップロードがいまいち分からない人はこちらの記事を参考にしてください。)

まとめ

今回は、他の人とコラボする時などにも役に立つ『branch・merge』について解説させていただきました。

お役に立てれば幸いです。<(_ _)>