GitHub Flowを採用した場合のブランチ名の付け方について

  • 23
    いいね
  • 0
    コメント
この記事は最終更新日から1年以上が経過しています。

GitHub FlowをベースにしたGitのブランチマネジメントを始めて早数ヶ月。

ブランチ名の付け方でいつも迷います。

GitHub Flowを採用した場合のブランチ名の付け方について、本家GitHub Flowの文章を読むと、説明的なブランチを作成するとあります。
つまり、そのブランチでやろうとしていることをシンプルで短い英語で表現して、それをブランチ名にするわけですが、毎日頻繁にブランチを切っていると、これが結構無視できない手間となります。

新機能追加や既存機能の改修など、大きめの修正であれば比較的名前もつけやすいです。
ただ、ちょっとしたリファクタリングや文言変更、細かいバグ修正まで英語で名前をつけようとすると結構しんどい。

そこで、ブランチ名は「yyyymmdd_hhmm_名前」というように開発チーム内でバッティングしないような文字列を機械的に付与するようにして、プルリクエストのときのタイトルや説明を日本語でそれなりにしっかり書くというやり方がより運用で回しやすいというのが現時点での結論です。
(新機能追加や大きめの既存機能改修などブランチの生存期間が数日以上の長いものについては説明的なブランチ名で構いませんし、そうすべきです。機械的に付与するのは生存期間が短く、日々頻繁に作成されるブランチを指します)

ブランチを「yyyymmdd_hhmm_名前」という名前にするのは上述のとおり純粋な英語力の問題もありますが、もうひとつ理由があります。

ブランチを切ったら即プルリクエストを投げるといういわゆる「生煮えPull Request」を採用しているので、今アクティブなブランチを確認するときはブランチリストではなく、プルリクエストのリストを見ることになります。

「生煮えPull Request」については以下を参照。
https://speakerdeck.com/ken_c_lo/pull-request-4-designers-githubwoshi-tutapuroguramatodezainafalseitereteibunakai-fa-huro

プルリクエストの一覧ページはプルリクエストのタイトルが列挙されており、ブランチ名は前面に出てきません。なので、ブランチ名はIDとして機能してくれるだけで良いということになります。「yyyymmdd_hhmm_名前」で事足りてしまうのです。

英語力が不要な理由にはならないですけどね。。他の現場ではどうやっているのか気になるところです。