[Git] Gitflow でブランチを華麗にさばきたいを SourceTree で実現する
Git ブランチの管理・運用モデルを学ぶ。
日にちを空けてしまったので、いろいろ抜けてしまいました。
すぐに書かないとダメですね。
Contents
Gitflow
最近、ブランチ管理がいい加減でダメだなと思ったリポジトリがあり、Gitflow があったなと思い出しました。
ブランチをさばくためのルールがあるのですが、Git に入門したてで理解して手動でさばける自信が無かったのでパスしてました。
下記の gitflow コマンドで補助はしてくれるようなのですが、なかなかハードルが高い。
SourceTree の Gitflow 機能を利用する
ブランチの命名だけでも揃えようとしたところ、SorceTree の表示が変わるじゃないですか。
ブランチ名を feature/1
と変更すると、SourceTree 上で分かりやすくまとめられて表示されます。
よくよく確認すると補助機能があります。
ということで、確認してみました。
導入
プロジェクトの init です。
いままで使っていませんでしたが、そもそもでっかい Git Flow アイコンがありました。
アイコンをクリックすると、ブランチの命名ルールがモデルの通りに自動設定されています。
そのまま OK します。
既にあるリポジトリにも適用でき、リポジトリ自体の変更、影響はないようです。
ブランチの作成
Git Flow アイコンをクリックすると、ブランチの作成ダイアログが表示されます。
リリースブランチ選び、名前などを入力していくとモデルに沿ったブランチ操作を自動で行ってくれます。
Git Flow アイコンのクリックは、今現在のブランチやレポジトリの状況に応じて、よしなに計らってくれるようです。
ブランチのマージ
手動でモデルに従う場合、feature は develop にマージ、develop は release に、release から master といった具合に、気を遣うところがあります。
が、SourceTree 上のブランチを右クリックすると、モデルに沿ったブランチさばきをしてくれました。
SourceTree の補助があれば、何も考えずとも利用できそうですね。
Tips
Gitflow を意識してから、利用頻度が高くなった git tips。
merge –no-ff
$ git merge --no-ff myfeature
以下で merge のデフォルトの振る舞いを –no-ff にできる。
% git config --global merge.ff false
SourceTree をつかえばいらないのかも。
弊害もあるので確認する。
branch(clone)
stash
diff
checkout(merge)
復習:ワークフローモデル
- トピックブランチと統合ブランチでの運用例【ブランチ】 | サルでもわかるGit入門 〜バージョン管理を使いこなそう〜 | どこでもプロジェクト管理バックログ
- Git ワークフローとそのチュートリアル | アトラシアン
- 「Gitブランチを使いこなすgit-flow/GitHub Flow入門」最新記事一覧 – ITmedia Keywords
GitHub flow