GitHub には、個人ユーザー用のアカウント以外にも、組織 (Organization) 用アカウントが用意されています。
個人アカウントと同様に組織アカウントでも、その名前空間にプロジェクトを持つことができます。
しかし、それ以外の点では異なるところが多数あります。
組織アカウントは、複数の人たちによるプロジェクトの共同所有を表すもので、
さらにその内部でのグループ管理をするための、さまざまなツールが用意されています。
組織アカウントは一般に、オープンソースのグループ (perl'' や
rails'' など)
や、一般企業 (google'' や
twitter'' など) が使うものです。
組織アカウントの作成はきわめて簡単です。GitHub 上のすべてのページの右上にある +''
アイコンをクリックして、メニューから
New organization'' を選びましょう。
まず必要になるのが、組織名と、そのグループの連絡先となるメールアドレスです。 もし望むなら、他のユーザーを、共同オーナーとしてこのアカウントに招待することもできます。
この手順に従えば、新しい組織のオーナーになれます。 個人アカウントと同様、組織アカウントも、すべてのプロジェクトをオープンソースにするのであれば無料で使えます。
組織のオーナーであるあなたが何かのプロジェクトをフォークするときには、個人の名前空間にフォークするのか組織の名前空間にフォークするのかを選べるようになります。 新しいプロジェクトを作るときにも同様に、個人アカウントの配下に作るのか組織の配下に作るのかを選べます。 また、組織の配下に作ったリポジトリは、自動的に、個人アカウントからの ``ウォッチ'' の対象になります。
[r_personal_avatar] と同様に、組織アカウントにもアバターを設定できるようになっています。 さらに、個人アカウントと同様のランディングページも用意されています。 その組織アカウントが抱えるリポジトリの一覧を、他の人にも見てもらえることでしょう。
さて、ここから先は、個人アカウントとは異なる組織アカウント独特の内容について、説明しましょう。
組織アカウントの中では、個々のメンバーをチームとして関連付けることができます。 これは単に、個人ユーザーアカウントと組織内のリポジトリをとりまとめたものであり、 そのリポジトリに対するアクセス権の設定などを行います。
たとえば、あなたの所属する企業の組織アカウントに frontend
、backend
、deployscripts
の三つのリポジトリがあるものとします。
HTML/CSS/Javascript の開発者たちには、frontend
と、おそらくは backend
についてもアクセスさせたいことでしょう。
一方、運用部門の人たちには、backend
や deployscripts
にアクセスできるようにしておきたいところです。
チーム機能を使えば、簡単に実現できます。リポジトリごとに Collaborators を管理する必要はありません。
組織アカウントにはシンプルなダッシュボードがあり、すべてのリポジトリやユーザーそしてチームの情報を確認できます。
チームの管理作業を行うには、組織アカウントのページ のページ右側にあるサイドバー Teams をクリックします。 移動した先のページでは、チームにメンバーを追加したり、チームにリポジトリを追加したり、チームの設定やアクセス権を管理したりすることができます。 リポジトリに対するチームのアクセス権は、「読み込み限定」「読み書き可能」「管理者」の中から選べます。 この設定の切り替えは、チームのページ の ``Settings'' ボタンをクリックして行います。
誰かをチームに招待すると、チームに招待されたことを伝えるメールが、その人に届きます。
さらに、チームへの (@acmecorp/frontend
のような) 言及も、個人アカウントへの言及と同じように機能します。
ただ、個人アカウントと違うところは、このように言及した場合は、チームの すべての メンバーが、そのスレッドを購読した状態になるという点です。
これは、そのチームに伝えたいことがある (が、誰に伝えればいいのかわからない) という場合に便利です。
一人のユーザーが複数のチームに属することもできるので、単なるアクセス制御以外の目的でチームを使うこともできます。
たとえば、ux
や css
あるいは refactoring
などのようなチームを用意して、その手の質問に対応させることもできるでしょうし、
legal
や colorblind
など、まったく異なる種類のチームを作ることだってできます。