GitHub でサブチームを作ったらリポジトリの権限が剥がされた #GitHub

問題

GitHub のチーム機能を使ってサブチームを作ったら意図しない挙動になった。

サブチームを作ってリポジトリ Admin 権限を付与し、親チームは Write 権限にしようとしたところ、サブチームの権限が変更されてしまう事象が発生した。

GitHub のチーム機能についてはこちら。

help.github.com

再現手順

  1. チームを作成する (parent-team とする)
  2. parent-team を hoge リポジトリの Admin にする
  3. parent-team のサブチームを作る (child-team とする)
  4. child-team を hoge リポジトリの Admin にする
  5. parent-team の権限を Write に変更する

上記の手順を実施すると、 child-team の権限が Write になってしまう。

サブチームは個別に強い権限を付与しているので、親の権限に引きずられないでほしい。。

回避方法

別のチームやユーザに一度 Admin 権限を付与して、あとから修正できるようにした。

(Org の強い権限があれば、それで直せばいいだけではある)

補足

  • この現象が発生するのは初回だけっぽい
    • 修正後はどちらのチームの権限をいじっても平気
  • 親チームの権限を弱める場合だけでなく、強める場合でも発生する

感想

罠っぽい動き。。。

サブチームで詳細な権限を設定できるという Doc の言葉からも、あまり自然な挙動ではない気がするなぁ。