こんにちは、Shinyaです
今回はGitの2歩目ということで、「ブランチ」について見ていきます
コマンドは一切出さずに概要を掴みに行きます
ブランチとは

そもそもブランチ(branch)という言葉は枝、支流、支店、分岐といった意味で使われます
こういった使われ方から想像がつくように、この言葉の中心には「本流から枝分かれしたもの」という意味があります
ではGitにおけるブランチとは何なのでしょうか
Gitの基本機能は変更履歴を保存することです
Gitのブランチを使うと下の図のように、ある状態から作業フォルダの変更履歴を分岐させることができます
この分岐一つ一つをブランチと呼びます
(下の図でいう赤、黄、緑の矢印)
なお、「分岐させる」というのは別のコピーフォルダを作ってそこで作業するということではありません
ひとつのフォルダに複数の状態(ブランチ)を同時に共存させるということです
詳しくは省きますが、コマンドひとつでブランチは切り換えることができます

「いやよく分からん」って感じだと思うので例で考えます
ブランチを操作する例

現在の作業フォルダにはsample.txtというテキストファイルが一つだけがあるとします
sample.txtは空白で何も書かれていないとします
また、この状態は一度コミットされており履歴として保存されているとします
(コミットが分からない方はこちらの記事へ)
説明のためにこれを状態Pと呼びます
状態Pからブランチを3つ作っていきます
まずブランチA(黄色)。このブランチでは作業Aが行われます
何でもいいですが、例えばsample.txtに「あいうえお」と書くという作業だとしましょう
次にブランチB(赤)。このブランチでは作業Bが行われます
例えば新しくdemo.txtという空のファイルを作るという作業だとします
最後にブランチC(緑)。このブランチでは作業Cが行われます
例えば新しくtest.txtという空のファイルを作る作業だとしましょう
ブランチを作るとこれらの異なる作業を同時並行で進めることができます
それぞれブランチで作業が完了したら、それぞれのブランチでコミットして変更履歴を保存することができます
このとき状態Pから派生した3つの状態(=ブランチAの状態A、ブランチBの状態B、ブランチCの状態C)が履歴として保存されます
そして次が大事なところなのですが、分岐した変更履歴(状態A,B,C)をもとの状態Pに反映させることができます
状態Pに状態Bを反映すると、作業フォルダの中にdemo.txtが新しくできていることになります(P+B)
そこにさらに状態Aを反映すると、sample.txtに「あいうえお」と書かれた状態になります(P+B+A)
さらに追加で状態Cを反映すると、作業フォルダの中にtest.txtが新しく加えられた状態になります(P+B+A+C)
ブランチでできること
つまりブランチを利用すると
- 目的の異なる複数の作業を独立的に並行して進めること(分岐)
- 完了した作業内容をメインの流れに反映すること(反映)
ができます
ブランチのメリット
ブランチを使うメリットはこんな感じです
- 複数人で一つのプロジェクトを開発するときに役割分担して同時並行で進められる
- 一人でも機能や目的別にブランチを分けて開発することで、プロジェクトを管理しやすくなる
正直、使ってみないと良く分からないのでピンと来なくても大丈夫です笑
最後に
以上がGitのブランチについてでした
はっきり言って初めての人には鬼難しい内容です、、
でも使ってると慣れてくるので少しでもいいからぜひGitを触ってみましょう!
最後まで読んでくださりありがとうございました
それでは、また