【GitHub】新しいブランチを作成する「branch」コマンド【チーム開発に必須の機能】
こんにちは、ちくたっく(@tictak_py)です。
今回は、GitHub上でチーム開発する方には必須の機能「ブランチ」について紹介していきます。
ブランチ(branch)は「枝」のことを意味しますが、このブランチ機能を用いることで「複数の機能を並行して開発出来る」ため、チーム開発する上では欠かせない機能となります。
こんな方に読んで欲しい記事です
- ブランチ機能の概要や基本的な使い方(作成・確認)を抑えておきたい方
- GitHubで使われている基本的なコマンドを学んでいきたい方
今回はブランチに関する最初の記事なので、「ブランチの概要」「ブランチを作成する方法」「ブランチを一覧で確認する方法」をメインに紹介していきます。
【GitHub】チーム開発に必須の「branch」コマンド
【概要】ブランチ(branch)とは何か?
ブランチとは、冒頭でも紹介したように「複数の機能」を「別々」に開発するにあたって非常に便利な機能のことを言います。エンジニアの方であれば、プロダクト開発をするにあたって、通常チームメンバーごとに必要機能を別々に開発していくため、このブランチ機能が役立つことになります。
ブランチごとに「独立」しているため、別々に開発することが出来るような仕組みになっているのですね。
例えば、あるWebアプリケーションを作るにあたって、Aさんはユーザー認証機能(ログインやログアウト等)を担当し、Bさんはメインコンテンツ機能を担当するような場合、「ブランチ」を作って各々作業をし、最終的に統合するようなイメージになります。
「チーム開発」を前提とした書き方をしてきましたが、一人で何かプロダクトを開発するような場合でも使えます。作業履歴を管理したり、機能ごとに作業を進めたいような場合に使ったりしますね。
【branchコマンド①】ブランチを新しく作成する
では早速ブランチを作成してみましょう。
この後確認していきますが、デフォルトでは「master」ブランチが作成されていますので、これとは別のブランチ「feature」を作成していきます。
「feature」は機能を追加するような時に使われる慣例的な名前なので、他の名前で試してもOKです。
これだけです。簡単に作れますね。
反応がなくて不安かもですが、この後ブランチ状況を確認してちゃんと反映されているか見てみましょう。
【branchコマンド②】既存ブランチ状況の確認|デフォルト
ブランチを確認するためには、「git branch」コマンドを使っていきます。
コマンドを入力した結果が以下となります。
すると、デフォルトの「master」ブランチに加えて、先ほど作った「feature」ブランチが追加されているのがわかるかと思います。
「master」ブランチの先頭にアスタリスク(*)が付いていますが、これは「今あなたはmasterブランチにいるよ」という意味です。初めのうちは、トラブルを回避する観点からも「今どのブランチで作業しているか」を意識するクセを付けておくことをオススメします。
「ブランチを切り替える方法」については、以下記事で紹介しているので参考にしてみてください。
【GitHub】ブランチの切替・変更・削除をする方法を紹介【コマンドと画像付きで解説】
GitHubを使ってチーム開発をする場合、デフォルトのmasterブランチだけで作業するということは少ないです。実際には機能に応じたブランチを作成していくことになるので、本記事を通じてブランチの切り替えから削除方法まで理解して使えるようにしましょう。
【branchコマンド③】ブランチの一覧確認|オプション「-a」
先ほどは、「git branch」コマンドでオプションを付けずにそのまま入力しましたが、オプションで「-a」を付けることも可能です。「a」は「all」の略で、リモートブランチと言われるもの(以下画面の赤文字部分)も含んだ一覧を表示させることが出来ます。
リモートブランチについてはまた別の機会に紹介したいと思いますが、リモートリポジトリ(GitHub)上にあるブランチ情報のことで、「pull」や「fetch」コマンドを用いることでローカルリポジトリに反映させることが出来ます。
いずれにしても、「git branch」や「git branch -a」コマンドを用いることで、ブランチ情報や今どのブランチにいるのかを確認出来るので、是非使えるようにしてみてください。
さいごに
今回は、プロダクトの開発には必須の機能「ブランチ」について紹介してきました。
実際の開発場面では、より詳細にブランチを切って(わけて)目的に応じて使い分けることが一般的ですが、まずはしっかりと基礎から抑えて、一つずつステップアップしていきましょう。
では今回はこのへんで。