紙一重の積み重ね

アラフォーのエンジニアがなれる最高の自分を目指して、学んだことをこつこつ情報発信するブログです。

【カイゼン・ジャーニー実践記】ブランチの保護ルールを複数のブランチに一括適用しました

はじめに

プロダクトのリーダーとして、自分ができる範囲でチームの作業効率化を進めています。 今回はGithubのプルリクエストの完成定義を整えました。

実践しているカイゼン・ジャーニー

完成の基準をチームで合わせる

やりたいこと

  • Pull Requestに対して、複数人のapproveがないとマージできないようにしたい
    • 例えば、2人のOKが出て、プルリクはマージできる状態とする、など
  • ブランチの保護ルールを複数のブランチに適用したい
    • masterdevelopだけでなく、base/hogehogeや、base/fugagugaといった、base/xxxxではじまるブランチにも適用させたい

参考情報

正規表現が使えるのでは?と思い調べてみた。

github.community

ワイルドカード構文 * で、リポジトリのすべてのブランチに対して自動ブランチ保護を設定することも可能です。 GitHubは、File.fnmatch 構文に File::FNM_PATHNAME フラグを使用するので、ワイルドカードはディレクトリの区切り文字 (/) には一致しません。 たとえば、qa/ は、qa/ で始まり、1 つのスラッシュが含まれるすべてのブランチにマッチします。 qa/**/ とすると、複数のスラッシュにマッチします。

実践

base*/*でいけそう。

f:id:yokoyantech:20200526181653p:plain

無事に base/hogehogeや、base/fugafugaに対しても適用できるようになりました。

f:id:yokoyantech:20200526181703p:plain