GitHub リポジトリの移譲で、移譲先の Org のリポジトリ作成権限が無い場合のワークアラウンド

2024.01.24

こんにちは、CX 事業本部製造ビジネステクノロジー部の若槻です。

GitHub のリポジトリを移譲する場合は、移譲(移行、移管、Transer)先の Organization(組織)アカウントの「リポジトリ作成権限」が必要となります。

リポジトリの移譲の前提条件:

  • 自分が所有しているリポジトリを組織に移譲するには、対象の組織のリポジトリを作成する権限が必要です。

リポジトリが作成できるためには、組織の Owner 権限を持っているか、組織の設定でリポジトリの作成が可能となっている必要があります。

しかし、移譲元のリポジトリを管理しているユーザーが、移譲先の Organization(組織)のリポジトリ作成権限を持っていない場合、リポジトリの移譲ができません。図で表すと次のような状況です。

移譲先のリポジトリ作成権限が無い場合のワークアラウンド

リポジトリ移譲先の組織アカウントのリポジトリ作成権限が無い場合のワークアラウンドとして、組織の Owner 権限を持っているユーザーアカウントを媒介して移譲を行う方法があります。

手順

この手順では、移譲先の組織アカウントのリポジトリ作成権限を持っているユーザーの協力が必要です。そのユーザーのパーソナルアカウントを媒介して移譲を行います。その際に媒介アカウントが移譲元のアカウントへのアクセス権限は不要となります。

まず移譲元アカウントから媒介アカウントへリポジトリの「1 回目の移譲」を行います。

そして媒介アカウントのユーザーは、移譲先の組織アカウントにリポジトリを移譲します。

これで手順は完了です。

あとは必要に応じて移譲したリポジトリのユーザーに移譲先でのリポジトリのアクセス権限を付与しましょう。

おわりに

GitHub リポジトリの移譲で、移譲先の Org のリポジトリ作成権限が無い場合のワークアラウンドについて紹介しました。

これによりリポジトリの所有者のユーザーに必要以上の権限を付与することなく、リポジトリの別 Org への移譲が可能となります。

以上