こんにちわ、エンジニアのオオバです。

非エンジニアにとってgitは難しい。
そもそも gitGitHub の違いも難しい。

正直そんなことはどうでも良いです。

ところで仕事をしていて、
「オオバさん、ブランチをどこから切ればよいですか?」

と非エンジニアの方から聞かれるときがあります。

そもそも質問者は自分でブランチを切ることが
わかっているフェーズまで来ている。

ということは かなりのgit熟練者
ただしgit熟練者でもブランチの切り方は難しいんだなと実感。

そこで本記事ではブランチを切るときの迷いをなくす方法を
解説したいと思います。

これを読めば今後 ブランチを切る迷いがなくなるでしょう。

マージ先からブランチを切る

結論を簡単にまとめます。

基本方針として「最新の状態からブランチを切る」でOKです。

理由は コンフリクトを回避するため。
また、古い状態で作業をすると
修正した箇所が元に戻ってしまう先祖還りも発生 するからです。

ただし、最新の状態がどこなのか、わからなくなることもあります。
そういうときは マージ先のブランチ
最新状態にするというのが答えになりますが、
わかりづらいですよね。

このあたり、わかりやすく解説していきます。

この記事の内容

gitで「ブランチを切る」とは自分の作業環境を作成すること

ブランチを切った図

【UIデザイナー向け】もう迷わないgitのブランチを切る場所_0

ブランチとは自分の作業環境です。
自分の作業環境を作ることを「ブランチを切る」と言います。

オオバ
オオバ
なぜブランチを「作る」ではなく「切る」のかはわかりません

複数人で開発していると同時多発で作業が発生します。
メンバーがそれぞれブランチを切って作業。

作業がマージされる図

【UIデザイナー向け】もう迷わないgitのブランチを切る場所_1

本流ブランチにマージしていきます。
多人数開発を円滑に進めるためにgitはよく使われますね。

なぜ最新状態からgitのブランチを切るのか

最新状態からgitのブランチを切る理由は2つ。

特に画像をあつかうUIデザイナーの場合は、
コンフリクト回避 が主です。

つまりメンバーとの作業被りによって
片方の作業を削除しないといけない状況を回避 したいのです。

コンフリクトして作業をマージできない状態の図

【UIデザイナー向け】もう迷わないgitのブランチを切る場所_2

ブランチA、ブランチBの両ブランチで
同じ画像ファイル image.png を編集したとします。
ブランチAは先に本流にマージ。
ブランチBはコンフリクトでマージできません。

この場合 どちらかの作業を打ち消す 必要が出てきます。
詳しくはこちらの記事で解説しているのでオススメです。

コンフリクトすると、作業のやり直しが発生し、
時間のロスが大きい です。

作業効率を上げるためにも
最新状態にしてから作業の開始をオススメします。

正常にマージされた図

【UIデザイナー向け】もう迷わないgitのブランチを切る場所_3

ブランチAがマージされたあとに
ブランチBを切って作業します。

すると 正常にマージ されます。

迷ったときはマージ先のブランチを最新化してブランチを切る

最新ブランチは1つではない ときもあります。
複数機能を同時開発しているときです。

大事なのは マージ先のブランチを最新化してブランチを切ること です。

例としてガチャ機能を長期で開発しているケースを取り上げます。
mainブランチからガチャ機能ブランチを切りました。

【UIデザイナー向け】もう迷わないgitのブランチを切る場所_4

ここで ガチャ機能だけに必要な画像を追加する作業 が発生したとします。

このときに切る最新のブランチは、
ガチャ機能ブランチ です。

mainブランチではありません。

重要なのは 「どこにマージする作業なのか?」 ということなのです。

ガチャに対して画像を追加したいため、
マージ先は「ガチャ機能ブランチ」です。

【UIデザイナー向け】もう迷わないgitのブランチを切る場所_5

つまり 「ガチャ機能ブランチ」を最新化したあと
「ガチャ画像作業ブランチ」を切る

というのが正しいフローです。

迷ったときは、 マージ先のブランチを最新化してブランチを切りましょう

まとめ : もう迷わないgitでブランチを切る場所

記事の内容を簡単にまとめます。

こんな感じです。

大規模な開発になるとブランチ数も多くなり
Sourcetreeが見づらくなりますよね。

こういうときに焦ったりすることもあるかも知れません。

いったん落ち着いて、
どのブランチにマージするか ということを思い出してください。
この1点さえ間違えなければ大丈夫。
事故は起きません。

どうしてもブランチを切る場所に迷うなら 、
今日からできることを紹介します。

エンジニアや周りのメンバーに
マージするブランチの確認 をしましょう。

「この機能はどのブランチにマージすれば良いですか?」
このような聞き方で伝わります。

マージ先のブランチが明確になるということは、
ブランチを切る場所も決まりますよね。

もう迷うことはありません。
ぜひとも マージ先のブランチを確認してみましょう。


フォローすると UIデザイナー力の上がるTwitter やってます!
今日から使えるテクニックを発信中。
ぜひフォローしてみてください!
👉フォローはこちら!

最後まで読んでいただきありがとうございました!
すばらしいgitライフをお過ごしください。

オススメ記事