Webサイト制作コースのお申し込みはこちら Webサイト制作コースのお申し込みはこちら

企業やチームでGitHubを利用する際、ユーザーアカウントやチーム単位でアクセス権限を変更したいケースも少なくありません。

本記事では、GitHubでグループの権限管理を行うことが出来るTeam機能の使い方についてご紹介していきます。

GitHub Teamとは


GitHub Docs(Team)を確認してみるとTeamについて下記のように記述されています。

Organization のメンバーによって構成されるグループであり、カスケードになったアクセス権限とメンションを伴う会社やグループの構造を反映します。

Organizationとは

Teamについて解説するには、まず「Organization」について説明する必要があります。

OrganizationについてもGitHub Docs(Organization)で確認してみると下記のように記述されています。

企業やオープンソースプロジェクトが多くのプロジェクトにわたって一度にコラボレーションできる共有アカウントです。
オーナーと管理者は、Organizationのデータとプロジェクトへのメンバーのアクセスを、洗練されたセキュリティ及び管理機能で管理できます。

Organizationでは「メンバーの追加や削除」「リポジトリの作成や管理」「Teamの作成や管理」を実施することが出来ます。

Teamでは作成したメンバーをグループ化して管理するために利用することになります。

Teamの機能

Teamを作成することで「可視性の設定」「ページの作成」「OrganizationからTeamに対してアクション設定」といった機能が利用出来るようになります。

可視性の設定

Teamには「Public」と「Private」の可視性を設定することが可能です。

「Public」では、Organizationに登録されたメンバー全員が参照及びメンションすることが出来ます。

一方「Private」では、OrganizationのオーナーもしくはTeamメンバーのみ参照可能となります。

ページの作成

Teamを作成することで、Team毎のページをOrganization内に作成することが可能です。

TeamメンバーとOrganizaitonのオーナーだけが閲覧出来るページを作成でき、グループ化して作業がしやすくなります。

OrganizationからTeamに対してアクション設定

OrganizaitionからTeam指定でメンションを飛ばすことで、 Teamに所属するメンバー全員宛に通知を送ることが可能となります。

他にもプルリクエストなど各個人だけでなく、Team全体に通知を届けることが出来るためグループ化して作業が行いやすくなります。

GitHubでTeamを作成してみよう


ではここからは実際にGitHub上でTeamを作成していきたいと思います。

Organizationの作成

Team機能を利用するには、まずOrganizationを作成する必要があります。


画面上部の「+」アイコンを開き、「New organization」をクリックします。


料金プランの選択画面が表示されるので、ご自身の利用目的にあったプランを選択してください。

サンプルではFreeプランを選択して「Create a free organization」ボタンをクリックします。


「組織名」と「連絡用メールアドレス」、「利用目的」を入力します。

ポテパンダの一言メモ

「組織名」は全ユーザーで一意である必要があるため、既に利用されている組織名は使えません。


項目が入力出来たら「Next」ボタンをクリックします。


組織に追加したいメンバーが決まっている場合、この画面で追加することも出来ますし、追加せずに「Complete setup」ボタンをクリックして次へ進むことも可能です。


再度GitHubアカウントへのログインが求められるためパスワードを入力します。


アンケートのような質問項目が表示されますので、必要項目を入力し画面下部の「Submit」ボタンをクリックします。

リポジトリの作成


Organizationの作成が完了した初期画面から、「Create a new repository」ボタンをクリックします。


ユーザーからリポジトリを作成するのと同じような画面が表示されますが、Ownerの部分がOrganizationで設定した名前になっています。

任意のリポジトリ名を入力して画面下部の「Create repository」ボタンをクリックします。


これでOrganizationがオーナーのリポジトリを作成することが出来ました。

Teamの作成


新たにTeamを作成したい場合、Organizationから「Teams」タブを開き「New team」ボタンをクリックします。


チーム名を入力して「Create team」ボタンをクリックします。


Teamが作成出来ると画像のように、Team用のページが表示されます。

GitHubのTeam機能に触れてみよう


GitHub上にTeamを作成出来たので、実際にどのような使い方が出来るのか確認していきたいと思います。

Teamにリポジトリを追加

初期状態ではTeamが利用するリポジトリは設定されていないので、「Repositories」タブから追加する必要があります。


「Add repository」ボタンをクリックします。


ポップアップが表示されるので、追加したいリポジトリを検索します。


「Add repository to team」ボタンをクリックします。


Teamに選択したリポジトリが追加されています。

メンション先としてTeamを指定

OrganizationのプロジェクトでIssueを発行してみましょう。


「@」を使用することで特定のユーザーに対してメンションを送ることが出来るのですが、対象ユーザーとしてチーム名が表示されていることが分かります。

このようにチーム名にメンション指定すると、Teamに登録されているメンバー全員がメンション対象となります。

子Teamの作成

Teamの可視性が「public」の場合には、Teamに対して子Teamを作成することも可能です。


作成したTeamから「Teams」タブを選択し、「Add a team」ボタンをクリックします。


作成済みのチーム名で検索するか、作成したいチーム名または何かしらの文字を入力して「Create team」をクリックします。


ポップアップで入力したチーム名と親チームが選択された状態でTeamの作成画面が表示されるので、「Create team」ボタンをクリックします。


新たにTeamが作成されたことが確認出来ます。


親Teamとして指定したTeamに戻って「Teams」タブを確認してみると、作成した「team-child」が子Teamとして表示されていることが確認出来ます。

さいごに: GitHubのTeam機能でアクセス管理を実施しよう


本記事では、GitHubでのチーム開発でメンバーアカウントをグルーピング化するのに便利なTeam機能についてご紹介してきました。

開発規模が大きくなるにつれて、リポジトリやメンバーアカウントの数が増えてくるため、全てを把握するのが困難になってきます。

今回ご紹介したOrganaize機能とTeam機能を活用して、組織の構造を明確にした上で、どのチームがどんなリポジトリを管理しているのか明確化出来るように取り組んでみてください。

エンジニアになりたい人に選ばれるプログラミングスクール「ポテパンキャンプ 」

ポテパンキャンプは卒業生の多くがWebエンジニアとして活躍している実践型プログラミングスクールです。 1000名以上が受講しており、その多くが上場企業、ベンチャー企業のWebエンジニアとして活躍しています。

基礎的な学習だけで満足せず、実際にプログラミングを覚えて実践で使えるレベルまで学習したいという方に人気です。 プログラミングを学習し実践で使うには様々な要素が必要です。

それがマルっと詰まっているポテパンキャンプでプログラミングを学習してみませんか?

卒業生の多くがWebエンジニアとして活躍

卒業生の多くがWeb企業で活躍しております。
実践的なカリキュラムをこなしているからこそ現場でも戦力となっております。
活躍する卒業生のインタビューもございますので是非御覧ください。

経験豊富なエンジニア陣が直接指導

実践的なカリキュラムと経験豊富なエンジニアが直接指導にあたります。
有名企業のエンジニアも多数在籍し品質高いWebアプリケーションを作れるようサポートします。

満足度高くコスパの高いプログラミングスクール「ポテパンキャンプ」

運営する株式会社ポテパンは10,000人以上のエンジニアのキャリアサポートを行ってきております。
そのノウハウを活かして実践的なカリキュラムを随時アップデートしております。

代表の宮崎もプログラミングを覚えサイトを作りポテパンを創業しました。
本気でプログラミングを身につけたいという方にコスパ良く受講していただきたいと思っておりますので、気になる方はぜひスクール詳細をのぞいてくださいませ。