💙

TortoiseGitを用いたGitLabリモート/ローカルブランチ切り替え

2022/03/01に公開

はじめに

初投稿になります🏳
 IT業界1年目で学習の日々を送っており、現在は組み込み系アプリケーションをC#で開発しています。
 現在、私の参画する開発チームでは GitLab でソースコードを管理し、ブランチ戦略として GitHub-Flow を採用し、 master と feature の2ブランチで開発を行っています。機能ごとに feature ブランチを生やしてソースコードを追加してマージまで行うと、今まで作業していた feature ブランチを削除して新規に feature ブランチを生やして作業するというものです。🌲
 私は Git クライアントとして TortoiseGit を使用していますが、 GitLab 上で作成した feature のリモートブランチをローカルブランチと紐づける方法で詰まりました。そこで、 GitLab 上で管理しているプロジェクトからソースをクローンし、リモートブランチをローカルブランチと関連付け、ブランチを切り替える一連の作業方法をまとめました。
Git 運用のリモートブランチ、ローカルブランチで困ったところを議事録を兼ねてつらつらと。。。

2022/2/28現在での内容です。

TortoiseGit 導入と GitLab の接続方法

ブランチ切り替えと関連しませんが、 TortoiseGit と GitLab の接続方法は下記を参考にしました。
https://qiita.com/SkyLaptor/items/6347f38c8c010f4d5bd2

GitLabリモート/ローカルブランチ切り替え

1. 新規 feature ブランチを作成(リモートブランチ)

GitLab のプロジェクトリポジトリからブランチを選択し、新規ブランチを押下する。

2. feature ブランチでクローン(リモートブランチ)

作成したブランチ(今回は feature/now )を選択して右のクローンボタンを押下する。

3. master のローカルブランチから feature ブランチへ切り替える(ローカルブランチ)

  1. PCのエクスプローラーを開き、クローンしたフォルダを右クリック→TortoiseGit→切り替え/チェックアウトを選択する。

  2. 切り替え先のブランチを feature/now ブランチへ変更し、オプションの「新しいブランチを作成」にチェックを入れOKボタンを押下する。「新しいブランチを作成」というのは新しいローカルブランチを生成するということ。デフォルトで作成した feature のリモートブランチと同名となっており、混乱を避けるためそのままを推奨。

4. 作業をしてコミット・プッシュ・マージを行う

ブランチの切り替えがメインのため、省略する。作業ブランチが切り替えた feature/now ブランチであることを確認して行う。

5. 新規 feature ブランチを作成(リモートブランチ)

1 の手順と同様にして、 GitLab で次に作業を行うブランチ(今回は feature/next )を生成する。

6. ブランチを master へ切り替える(ローカルブランチ)

3 の手順と同様にして、エクスプローラーで今まで作業したブランチ(今回は feature/now ) → master へ切り替える。

7. master ブランチでプルする(ローカルブランチ)

5 で作成したリモートブランチはPCの TortoiseGit と結びついておらず、ブランチの切り替えをしても次に作業したいブランチ(今回は feature/next )を選択することができない。そのため、リモートブランチと紐づいている master ブランチを用いて GitLab の最新情報をPCに反映するイメージ。

8. master ブランチを feature へ切り替える(ローカルブランチ)

3 の手順と同様にして、 エクスプローラーで次に作業したいブランチ(今回は feature/next )を選択する。GitLab の最新情報がPCへ反映されているため、該当ブランチを選択することができる。

まとめ

  • masterブランチでプロジェクトをプル
    ⇒ TortoiseGit の最新情報がPCに反映される

Discussion