GithubでOrganization上の特定のメンバーにしかリポジトリをみせない方法
Github で Organization 上の特定のメンバーにしかリポジトリをみせない方法です。
Organization 上の対象のリポジトリだけを触るのではなく、全体の設定を変更するので、メンバーやリポジトリが多い場合は少したいへんかもしれません。
記事を書いた時点での Github の状態で書いています。
Organization メンバーのデフォルトの権限を変更する
Organization ページから、Settings > Member privileges を選択します。
Base permission をNo permission
に変更します。
この設定をすることで、Member
権限のメンバーは private リポジトリにアクセスできなくなります。これが大事!
ちなみに、Owner
権限をもつメンバーは全リポジトリ見えます。
特定のメンバーに private リポジトリへのアクセス権を与える
特定のメンバーにしか見せたくないリポジトリにアクセス権を与えていきます。
与え方は2つ。
- チームを作成して、チームにリポジトリへのアクセス権を付与する
- メンバーに対してリポジトリへのアクセス権を付与する
今回は 1 の場合をやっていきます。
チームを作っていたほうが管理しやすい。
チームを作成する
Organization ページから、Teams を選択します。
[New team]ボタンからチームを作成します。チームの設定内容はここには関係ないので、デフォルトでもなんでもいいです。
作ったチームをクリックし、チームページに移動します。
チームページから、Repositories を選択します。
[New repository]ボタンから、追加したいリポジトリを選択します。
これで、このチームに属するメンバーはリポジトリへの権限を得ることができました!!!
チームごとにリポジトリに対する権限(Read のみとか)も変更できます。