Githubのプロジェクト(オリジナル・リポジトリ)を複数人で共有する(Collaborators権限)
GitHubでのソフトウェア開発、プロジェクト管理の流れでは、チームの人数が多い場合、以下のような流れになることが多いと思います。
【プロジェクト管理者ではなく、開発者の場合】
- GitHubにユーザ(アカウント)を作成する
- 開発対象のオリジナルのリポジトリをフォーク(Fork)して、自分のアカウントにコピーする。
- ForkしたリポジトリをローカルのPCにクローンして開発を進める。
- 適宜自分のアカウントのリポジトリにPushする。
- 変更内容が落ち着いてきたら、まとめて、オリジナルのリポジトリにプルリクエスト (Pull Request) を送信して変更を取り込んでもらう。
Gitを使い慣れた人にとっては、Forkという概念は使い慣れないかもしれませんが、オリジナルのリポジトリの管理をしっかりしつつ、多人数でプロジェクト共有していくにはすばらしい機能だと思います。
このやり方はリポジトリをForkしてから、プルリクエストベースで進めていくため、「fork and pull model」と呼ばれることもあります。
さて、それとは異なり、チームの人数がそれほど多くない場合や、管理を複数人で行いたい場合など、特定のユーザに対してオリジナルのリポジトリを直接変更する権限を与えた方が効率のよい運営ができる場合もあります。
これは、上記に対して「shared repository model」と呼ばれることもあります。
そんなときには、下記の手順で、指定したユーザに対して直接、オリジナルのリポジトリを編集する権限を付与できます。
手順
はじめに、オリジナルのリポジトリに管理者権限でアクセスします。
すると、プロジェクトに「Setting」のタブが表示されていることが確認できます。
ここをクリックすると、左側に設定できる項目が並びますが、その中の「Collaborators」をクリックしましょう。
この設定画面では、ユーザ名かメールアドレスを直接指定してそのプロジェクトに追加することにより、Push権限を与えることができます。
下記のようにユーザを追加すると、そのユーザのメアドに、「Collaborators」に招待された旨のメールが届きます。
そのメールのリンクをクリックして招待を受けると、下記のような状態になり、以降、そのユーザもオリジナルのプロジェクトへのPush権限を持つことができるようになります。