こんにちは、えんせきです。
Blogのリポジトリをご覧の方はご存知かもしれませんが、ぼくは一人でやってるとBranch切るのを怠りがちです。
これを機にちゃんと一人でもWorkflowを改めようと思いました。
つまりなにしたの?
Gitでブランチ切って開発する時のWorkflowと都度使いそうなコマンドをまとめた。
基本的なWorkflow
作業に成功した時の例
$ git checkout -b topic-branch $ <うまくいった作業> $ git add -A $ git commit -a -m "うまくいった。ほめて" $ git checkout master $ git merge topic-branch $ git branch -d topic-branch
ここではマージ済のブランチを削除するので-d
作業に失敗した時の例
$ git checkout -b topic-branch $ <しっぱいしちゃった作業> $ git add -A $ git commit -a -m "失敗しちゃった。てへぺろ" $ git checkout master $ git branch -D topic-branch
ここではマージしてないブランチを削除するので-D
マージせずに-dすると-Dを使うように促される。
適宜やるコマンド
Branchを作った時にタイポした
git checkout -b typo-branch git branch -m topic-branch
typo-branchに入って今アクティブなbranch名を変更できる。
リモート先のBranchリストを見る
git branch -r
指定したBranchを追跡するようにする
git branch -u upstream-branch # 追跡を外す時 git branch --unset-upstream
チェックアウトの時に追跡先を指定する。
git checkout -b sf origin/serverbranch
僕は追跡って単語がいまいちピンとこなかったけど、
リモートのorigin/masterとローカルのmasterは、「ローカルのmasterがリモートのorigin/masterを追跡している」。
Git - Remote Branches
日本語って難しい。