# GitLab から GitHub への移行のアクセスを管理する

GitLab から GitHub に移行するために必要なアクセスを設定します。

GitLab から GitHub にリポジトリを移行するには、 **ソース** (GitLab 上のプロジェクト) と **宛先** ( GitHub上の組織) への十分なアクセス権が必要です。 この記事の手順を完了すると、アクセスとアクセス許可が移行の準備が整います。

## 移行を実行するユーザーを決定する

移行を実行するユーザーが\*\*\*\* 組織の所有者GitHub場合は、GitHub組織の所有者が最初に移行者ロールを付与する必要があります。

* GitHub組織の所有者であり、自分で移行を実行する予定の場合は、このガイドを引き続きお読みください。
* 移行者ロールを他のユーザーに割り当てる場合は、ここでそれを行います。 その後、移行者はこれらのガイドに従って残りの手順を実行する必要があります。 「[移行者ロールの付与](/ja/migrations/using-github-enterprise-importer/migrate-from-gitlab/grant-the-migrator-role)」を参照してください。

## personal access token (classic)を作成するGitHub

次に、personal access token (classic)がGL2GH extension of the GitHub CLIとの通信に使用するGitHubを作成する必要があります。 GitHub
personal access token (classic)に必要なスコープは、あなたの役割と実行したいタスクによって異なります。

> \[!NOTE]
> personal access token (classic) のみを使用でき、fine-grained personal access token は使用できません。つまり、組織が "組織へのアクセスをGitHub Enterprise Importerに制限する" ポリシーを使用している場合、personal access tokens (classic)を使用することはできません。 詳しくは、「[Enterprise 内の個人用アクセス トークンに対するポリシーの適用](/ja/enterprise-cloud@latest/admin/enforcing-policies/enforcing-policies-for-your-enterprise/enforcing-policies-for-personal-access-tokens-in-your-enterprise#restricting-access-by-personal-access-tokens)」をご覧ください。

| タスク                             | 組織の所有者                                                                                                                                                                                                                               | 移行ツール                                                                                                                                                                                                                                |
| ------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| リポジトリ移行用の移行ロールを割り当てる            | `admin:org`                                                                                                                                                                                                                          | <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-dash" aria-label="Not applicable" role="img"><path d="M2 7.75A.75.75 0 0 1 2.75 7h10a.75.75 0 0 1 0 1.5h-10A.75.75 0 0 1 2 7.75Z"></path></svg> |
| リポジトリの移行の実行 (移行先の Organization) |                                                                                                                                                                                                                                      |                                                                                                                                                                                                                                      |
| `repo`、`workflow`、`admin:org`   |                                                                                                                                                                                                                                      |                                                                                                                                                                                                                                      |
| `repo`、`workflow`、`read:org`    |                                                                                                                                                                                                                                      |                                                                                                                                                                                                                                      |
| 移行ログのダウンロード                     |                                                                                                                                                                                                                                      |                                                                                                                                                                                                                                      |
| `repo`、`workflow`、`admin:org`   |                                                                                                                                                                                                                                      |                                                                                                                                                                                                                                      |
| `repo`、`workflow`、`read:org`    |                                                                                                                                                                                                                                      |                                                                                                                                                                                                                                      |
| マネキンの回収                         |                                                                                                                                                                                                                                      |                                                                                                                                                                                                                                      |
| `repo`、`workflow`、`admin:org`   | <svg version="1.1" width="16" height="16" viewBox="0 0 16 16" class="octicon octicon-dash" aria-label="Not applicable" role="img"><path d="M2 7.75A.75.75 0 0 1 2.75 7h10a.75.75 0 0 1 0 1.5h-10A.75.75 0 0 1 2 7.75Z"></path></svg> |                                                                                                                                                                                                                                      |

トークンを作成する方法については、 [個人用アクセス トークンを管理する](/ja/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens#creating-a-personal-access-token-classic) を参照してください。

## GitLab で personal access token を作成する

GitLab personal access token には、 `api` スコープと `read_repository` スコープが必要です。

自己管理 GitLab インスタンスの場合、エクスポートが完了し、ユーザー属性が保持されるように、トークンは **管理者**に属している必要があります。

トークンを作成する方法については、GitLab ドキュメントの [Personal access tokens](https://docs.gitlab.com/user/profile/personal_access_tokens/) を参照してください。

## IP 許可リストを設定する GitHub

GitHubの IP 許可リスト機能を使用する場合は、以下のGitHub IP 範囲を宛先組織の許可リストに追加する必要があります。 「[組織に対する許可 IP アドレスを管理する](/ja/enterprise-cloud@latest/organizations/keeping-your-organization-secure/managing-security-settings-for-your-organization/managing-allowed-ip-addresses-for-your-organization)」または「[IP 許可リストを使用して Enterprise へのネットワーク トラフィックを制限する](/ja/enterprise-cloud@latest/admin/configuring-settings/hardening-security-for-your-enterprise/restricting-network-traffic-to-your-enterprise-with-an-ip-allow-list)」を参照してください。

宛先組織が **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 日に追加)

移行先の組織が **GHE.com** している場合、許可する必要がある範囲は、データ所在地リージョンによって異なります。 REST API のGitHub Enterprise Importer エンドポイントで`/meta`によって使用される IP 範囲の up-to-date リストを取得できます。 応答の `github_enterprise_importer` キーに、移行に使われる IP 範囲のリストが含まれます。

## 移行によるリポジトリ ルールセットのバイパスを許可する

移行先の組織または企業でルールセットが有効になっている場合、移行されたリポジトリの履歴がそれらのルールに違反する可能性があります。 ルールセットを無効にせずに移行を許可するには、該当する各ルールセットのバイパス リストに "Repository migrations" を追加します。  このバイパスは、移行中にのみ適用されます。 完了すると、すべての新しいコントリビューションにルールセットが適用されます。

バイパスを構成するには:

1. 各エンタープライズまたは組織のルール セットに移動します。
2. \[バイパス リスト] セクションで、\[バイパスの **追加**] をクリックします。
3. **\[リポジトリの移行] を選択します**。

詳細については、「[組織内のリポジトリのルールセットを作成する](/ja/organizations/managing-organization-settings/creating-rulesets-for-repositories-in-your-organization)」および「[リポジトリ移行のルールセットのバイパス設定](/ja/enterprise-cloud@latest/migrations/troubleshooting/setting-ruleset-bypasses-for-repository-migrations)」を参照してください。

## GitLab でエクスポートを有効にする

移行する GitLab プロジェクトは、エクスポートに対して有効にする必要があります。 GitLab ドキュメントのインポートについては、「プロジェクトのエクスポートと [Sidekiq の構成を](https://docs.gitlab.com/administration/settings/import_and_export_settings/#enable-project-export)[有効にする」](https://docs.gitlab.com/administration/sidekiq/configuration_for_imports/)を参照してください。