リポジトリを Azure DevOps から GitHub に移行するには、 ソース (Azure DevOps 上の組織) と 宛先 (GitHub 上の組織) への十分なアクセス権が必要です。 この記事の手順を完了すると、アクセスとアクセス許可が移行の準備が整います。
移行を実行するユーザーを決定する
移行を実行するユーザーが GitHub 組織所有者 でない 場合は、GitHub 組織所有者が最初に移行者ロールを付与する必要があります。
- GitHub 組織の所有者であり、自分で移行を実行する予定の場合は、このガイドを引き続き読むことができます。
- 移行者ロールを他のユーザーに割り当てる場合は、ここでそれを行います。 その後、移行者はこれらのガイドに従って残りの手順を実行する必要があります。 「移行者ロールの付与」を参照してください。
GitHub でpersonal access token (classic)を作成する
次に、personal access token (classic) を作成する必要があります。ADO2GH extension of the GitHub CLI は、GitHub と通信するために使用します。 GitHub personal access token (classic) に必要なスコープは、ロールと完了したいタスクによって異なります。
メモ
personal access token (classic) のみを使用でき、fine-grained personal access token は使用できません。 つまり、organization が [Restrict personal access tokens (classic) from accessing your organizations] ポリシーを使用している場合は、GitHub Enterprise Importer を使用できません。 詳しくは、「Enterprise 内の個人用アクセス トークンに対するポリシーの適用」をご覧ください。
| タスク | Organization owner | 移行ツール |
|---|---|---|
| リポジトリの移行に移行ツール ロールを割り当てる | admin:org | |
| リポジトリの移行の実行 (移行先の Organization) | repo、admin:org、workflow | repo、read:org、workflow |
| 移行ログのダウンロード | repo、admin:org、workflow | repo、read:org、workflow |
| マネキンの回収 | admin:org |
トークンを作成する方法については、 個人用アクセス トークンを管理する を参照してください。
Azure で Personal access token を作成する
Azure DevOps personal access token に、work item (read)、code (read)、および identity (read) スコープが必要です。
フェーズ 4 で inventory-report フラグを使用できるように、personal access token へのフル アクセスを許可することをお勧めします。
複数の Organization から移行する場合は、personal access token から、アクセス可能なすべての Organization にアクセスできるようにします。
Microsoft Docs での personal access tokens の使用 を参照してください。
GitHub で IP 許可リストを構成する
GitHub の IP 許可リスト機能を使う場合は、以下の GitHub IP 範囲を移行元または移行先の Organization の許可リストに追加する必要があります。
宛先組織が GitHub.com 上にある場合は、次の IP アドレスを許可する必要があります。
- 192.30.252.0/22
- 185.199.108.0/22
- 140.82.112.0/20
- 143.55.64.0/20
- 135.234.59.224/28 (2025 年 7 月 28 日に追加)
- 2a0a:a440::/29
- 2606:50c0::/32
- 20.99.172.64/28 (2025 年 7 月 28 日に追加)
「組織に対する許可 IP アドレスを管理する」と「IP 許可リストを使用して Enterprise へのネットワーク トラフィックを制限する」を参照してください。
ID プロバイダー (IdP) の制限を一時的に構成する
GitHub で IdP の IP 許可リスト (Azure CAP など) を使用して企業へのアクセスを制限する場合は、移行が完了するまで、エンタープライズ アカウント設定でこれらの制限を無効にする必要があります。
移行によるリポジトリ ルールセットのバイパスを許可する
移行先の組織または企業でルールセットが有効になっている場合、移行されたリポジトリの履歴がそれらのルールに違反する可能性があります。 ルールセットを無効にせずに移行を許可するには、該当する各ルールセットのバイパス リストに "Repository migrations" を追加します。 このバイパスは、移行中にのみ適用されます。 完了すると、すべての新しいコントリビューションにルールセットが適用されます。
バイパスを構成するには:
- 各エンタープライズまたは組織のルール セットに移動します。
- [バイパス リスト] セクションで、[バイパスの 追加] をクリックします。
-
**[リポジトリの移行] を選択します**。
詳しくは、「組織内のリポジトリのルールセットを作成する」をご覧ください。
次のステップ
次のフェーズでは、GitHub Enterprise Importer をインストールして構成します。 「フェーズ 3: GitHub Enterprise Importer をインストールして構成する」を参照してください。