移行の種類
行える移行は3種類あります。
- GitHub Enterprise Server インスタンスから別の既存のGitHub Enterprise Server インスタンスへの移行。 インスタンス上の任意のユーザあるいはOrganizationが所有する任意の数のリポジトリを移行できます。 移行を行う前に、双方のインスタンスにサイト管理者としてアクセスできなければなりません。
- GitHub.com組織からGitHub Enterprise Server インスタンスへの移行。 Organizationが所有する任意の数のリポジトリを移行できます。 移行を実行する前に、組織へのGitHub.com権と、ターゲット インスタンスへのサイト管理者アクセス権が必要です。
- テスト実行 は、ステージング インスタンスにデータをインポートする移行です。 これらは、移行が__ に適用された場合お使いの GitHub Enterprise Server インスタンス起こるかを確認するのに役立ちます。 運用インスタンスへデータをインポートする前に、ステージング インスタンスでテスト実行を行うことを強くおすすめします。
メモ
ハイパーバイザー間で**** インスタンスを転送する場合は、ghe-migrator を使用GitHub Enterprise Server。 代わりに、 GitHub Enterprise Server Backup Utilitiesを使用して新しい場所にバックアップして復元するか、新しい場所にレプリカを作成してからレプリカ アプライアンスにフェールオーバーすることをお勧めします。 詳細については、「Backup Utilities を使用したインスタンスのバックアップの構成」、「高可用性レプリカの作成」、「レプリカアプライアンスへのフェイルオーバーの開始」を参照してください。
データの移行
ghe-migrator では、リポジトリがすべての中心になります。 リポジトリに関係するほとんどのデータは移行できます。 たとえば、組織内のリポジトリは、リポジトリ_および_その組織、さらにそのリポジトリに関連付けられているユーザー、チーム、イシュー、プルリクエストのすべてを移行します。
以下の表の項目はレポジトリと共に移行できます。 移行されたデータの一覧に表示されない項目は、 Git LFS 資産を含め、移行できません。
メモ
移行後は、フォークのリレーションシップは保持されません。
| 移行されたリポジトリに関連するデータ | メモ |
|---|---|
| ユーザー | ユーザーの @mentions は、ターゲットに一致するように書き直されます。 |
| 組織 | 組織の名前と詳細が移行されます。 |
| リポジトリ | Git ツリー、blob、コミット、および行へのリンクは、ターゲットにマッチするよう書き換えられます。 内部リポジトリはプライベート リポジトリとして移行されます。 アーカイブ状態は未設定です。 |
| ウィキス | すべてのWikiのデータは移行されます。 |
| Teams | チームの**@mentions**は、ターゲットに一致するように書き直されます。 |
| マイルストーン | タイムスタンプは保持されます。 |
| 問題 | Issueへの参照とタイムスタンプは保持されます。 |
| Issueのコメント | コメントへの相互参照は、ターゲットインスタンスに合わせて書き換えられます。 |
| Pull Request | プルリクエストへの相互参照はターゲットにマッチするよう書き換えられます。 タイムスタンプは保持されます。 |
| プルリクエストのレビュー | プルリクエストのレビューと関連データは移行されます。 |
| プルリクエストのレビューのコメント | コメントへの相互参照は、ターゲットインスタンスに合わせて書き換えられます。 タイムスタンプは保持されます。 ファイル レベルのコメントは移行されません。 |
| コミットコメント | コメントへの相互参照は、ターゲットインスタンスに合わせて書き換えられます。 タイムスタンプは保持されます。 |
| リリース | すべてのリリースデータは移行されます。 |
| プルリクエストまたはイシューに対して取られたアクション | ユーザの割り当て、タイトルの変更、ラベルの変更など、プルリクエストあるいはIssueに対するすべての変更は、それぞれのアクションのタイムスタンプと共に保持されます。 |
| 添付ファイル | |
| Issue と pull request の添付ファイルが移行されます。 移行に関するこの機能は無効化できます。 | |
| Webhooks(ウェブフック) | アクティブなwebhookのみが移行されます。 |
| リポジトリのデプロイキー | リポジトリのデプロイキーは移行されます。 |
| 保護されたブランチ | 保護されたブランチの設定と関連データは移行されます。 |
外部認証データの移行について
移行のソースの場所が LDAP または SAML 認証を使用する GitHub 製品である場合、 ghe-migrator は、ユーザー アカウントにリンクされた外部認証データを移行しません。 認証オプションの詳細については、GitHub Enterprise Serverを参照するか、GitHub Enterprise Server ドキュメントまたはGitHub Enterprise Cloud ドキュメントの「エンタープライズ向け認証について」を参照してください。
移行先インスタンスに移行し、外部認証を構成する場合、ユーザーは、ソース インスタンスのアカウントと同じユーザー名またはユーザー ID を持つユーザー アカウントを使用して、移行先インスタンスにサインインする必要があります。 管理者は、インスタンスが [Management Console]のユーザー アカウント名をマップするために使用する外部属性を確認できます。 詳しくは、「管理コンソールへのアクセス」をご覧ください。