個人製作の場合、正直ブランチなくてもどうにかなったりしますが、大掛かりな変更で気分的に使いたくなる事はある。そんな時のための覚書です。
GitHub Flow という使い方に該当するんでしょうか? シンプルなので楽なやつ
なお、リポジトリとして GitHub を使っていますが、GitLab やローカル Git リポジトリでも同じ使い方が出来ます。全て TurtoiseGit で完結させます。
GitHub でリポジトリを作成
GitHub と TurtoiseGit の使い方がわからない場合、こちらを参照してください。
適当にファイルを作成した後、コミット&プッシュ
TestRepository (main) をクローン(TurtoiseGit を使用)
a.txt を作成
TurtoiseGit でコミット&プッシュ
別ブランチ用クローンを作成し、b.txt を追加
TestRepository (main) をクローン、b.txt を作成
右クリックメニュー > TurtoiseGit > ブランチ作成
ブランチ名は TestBranch としました
TestBranch にコミット&プッシュします
ここまでで GitHub を確認
main リポジトリ、TestBranch 2つのブランチが作成されました。
Compare & pull request でマージする事も出来ますが、個人製作の場合、マージすることはわかりきっているのでプルリクなんて必要ありません。
「会社で必要な作法はいつもやるように」勢の方、お許しを
一応確認のために GitHub を開きましたが、オペレーションは TurtoiseGit で完結します。
TestRepository を操作してマージ
TestRepositoryForBranch(TestBranch) を TestRepository(main) にマージします。
一旦プルして、TestBranch の情報を獲得します。この操作は忘れがちなので注意
右クリックメニュー > TurtoiseGit > マージ
ブランチは remotes/origin/TestBranch を選択します
b.txt がマージ出来ていたら、右クリックメニュー > TurtoiseGit > プッシュ
これで main に TestBranch がマージされます
GitHub を確認
マージされているのが確認できます。
Your main branch isn't protected
もし他のコラボレーター(作業担当者)がいた場合、誰でも main を書き換えられてしまいますよ、という注意です。今回はボッチリポジトリのため、特に気にする必要はありません。
TestBranch を削除する
マージした後のブランチを残しておくといい事はありません。消してしまいましょう。
右クリックメニュー > TurtoiseGit > ref ブラウザ
TurtoiseGit のバージョンによっては「リファレンスをブラウズ」という名前かもしれません
remotes > origin/TestBranch を右クリック > リモートブランチを削除
質問には「はい」
GitHub で確認
GitHub を確認すると、main ブランチのみになっている事が確認できます。
まとめ
今回は理解しやすいよう、2つのクローンディレクトリにそれぞれブランチを分けましたが、慣れれば1つのクローンディレクトリで構わないと思います。
個人ではなく複数で GitHub を使う場合はプルリクを知っておいた方がいいでしょう。
以前記事にまとめましたので、よろしければそちらもご覧ください。