[Chrome] プルリクエストのマージ先を見やすく表示して、マージ先を間違える事故の発生を防ぐ! (GitHub)

Chrome拡張機能「merge gatekeeper for github」を使えば、GitHubでマージ先のブランチ名がとても分かりやすくなります。 マージ事故の発生を事前に気づくきっかけになります。
2020.03.18

Gitブランチ運用を次のようにすることがあります。

  • masterブランチ:本番環境にデプロイする
  • stagingブランチ:ステージング環境にデプロイする
  • developブランチ:開発環境にデプロイする

リリース時に各ブランチからプルリクエストを出してマージしますが、その際のマージ先指定を間違えてしまい、developからmasterにマージする事故が発生しました。

  • 通常時
    • developブランチ → stagingブランチ
    • stagingブランチ → masterブランチ
  • 事故発生時
    • developブランチ → masterブランチ

developブランチからmasterブランチにマージする

プルリクエスト出す側もレビューする側も気づいていませんでした。プルリクエスト画面の上部にマージ元とマージ先は常時表示されています。

マージ元とマージ先が常に表示されている

……地味に薄いです。

GitHubで「特定ブランチからのプルリクエストエストのみできる」な機能はないので(無いですよね?)、人間がなんとかする方針で対策を考えていたところ、いい感じの拡張機能を見つけました。

merge gatekeeper for github

マージ先ブランチ名が分かりやすく表示されている

とてもシンプルな機能で、マージボタンの近くに大きく表示されます。 そのため、マージ直前に「おっとマージ先ブランチは合っているかな?」と確認するきっかけになります。視認性もバッチリです。

さいごに

他にもGitHub関連で便利な拡張機能があるので、ぜひ試してみてください。