GithubでOrganization上の特定のメンバーにしかリポジトリをみせない方法

kaori
kaori

Github で Organization 上の特定のメンバーにしかリポジトリをみせない方法です。

Organization 上の対象のリポジトリだけを触るのではなく、全体の設定を変更するので、メンバーやリポジトリが多い場合は少したいへんかもしれません。

記事を書いた時点での Github の状態で書いています。

Organization メンバーのデフォルトの権限を変更する

Organization ページから、Settings > Member privileges を選択します。

Base permission をNo permissionに変更します。

この設定をすることで、Member権限のメンバーは private リポジトリにアクセスできなくなります。これが大事!

ちなみに、Owner権限をもつメンバーは全リポジトリ見えます。

特定のメンバーに private リポジトリへのアクセス権を与える

特定のメンバーにしか見せたくないリポジトリにアクセス権を与えていきます。

与え方は2つ。

  1. チームを作成して、チームにリポジトリへのアクセス権を付与する
  2. メンバーに対してリポジトリへのアクセス権を付与する

今回は 1 の場合をやっていきます。

チームを作っていたほうが管理しやすい。

チームを作成する

Organization ページから、Teams を選択します。

[New team]ボタンからチームを作成します。チームの設定内容はここには関係ないので、デフォルトでもなんでもいいです。

作ったチームをクリックし、チームページに移動します。

チームページから、Repositories を選択します。

[New repository]ボタンから、追加したいリポジトリを選択します。

これで、このチームに属するメンバーはリポジトリへの権限を得ることができました!!!

チームごとにリポジトリに対する権限(Read のみとか)も変更できます。