ドキュメントには頻繁に更新が加えられ、その都度公開されています。本ページの翻訳はまだ未完成な部分があることをご了承ください。最新の情報については、英語のドキュメンテーションをご参照ください。本ページの翻訳に問題がある場合はこちらまでご連絡ください。
記事のバージョン: Enterprise Server 2.14

このバージョンの GitHub Enterprise はこの日付をもって終了となります: このバージョンの GitHub Enterprise はこの日付をもって終了となりました: 2019-07-12. 重大なセキュリティ上の問題があっても、パッチはリリースされなくなります。優れたパフォーマンス、改善されたセキュリティ、そして新しい機能のために、GitHub Enterprise の最新バージョンにアップグレードしてください。 アップグレードに関するヘルプについては、GitHub Enterprise Support に連絡してください。

GitHub Enterprise Server ソースリポジトリをエクスポートする

ソースリポジトリをロックした後、1 つずつ、またはテキストファイル中のリポジトリ URL のリストを使用して一括でエクスポートできます。 そして、インポートプロセスのための単一の移行アーカイブを作成します。

メモ: リポジトリをロックすれば、ユーザによるリポジトリへのプッシュや、Issue、ラベル、マイルストーン、ウィキ、コメントなどのリポジトリのリソースの変更を防ぐことができます。ロックされたリポジトリには、新しい Team やコラボレーターを関連付けることはできません。

トライアル実行を行っているなら、リポジトリをロックする必要はありません。そうでない場合は、強く推奨します。詳細は「移行について」を参照してください。

  1. GitHub Enterprise Server インスタンス に SSH します。

    $ ssh -p 122 admin@HOSTNAME
  2. エクスポートするリポジトリを準備するには、ghe-migrator add コマンドをリポジトリの URL と一緒に使用します:

    • リポジトリをロックする場合は、コマンドの末尾に --lock を付けます。 トライアル実行を行う場合は、--lock は必要ありません。
    $ ghe-migrator add https://hostname/username/reponame --lock
    • You can exclude file attachments by appending --exclude_attachments to the command. 添付ファイルは大きくなる場合があり、最終的なマイグレーションアーカイブを不必要に膨らませてしまう場合があります。

    • To prepare multiple repositories at once for export, create a text file listing each repository URL on a separate line, and run the ghe-migrator add command with the -i flag and the path to your text file.

      $ ghe-migrator add -i PATH/TO/YOUR/REPOSITORY_URLS.txt
  3. When prompted, enter your GitHub Enterprise Server username:

    Enter username authorized for migration:  admin
  4. When prompted for a personal access token, enter the access token you created in "Preparing the GitHub Enterprise Server source instance":

    Enter personal access token:  **************
  5. When ghe-migrator add has finished it will print the unique "Migration GUID" that it generated to identify this export as well as a list of the resources that were added to the export. You will use the Migration GUID that it generated in subsequent ghe-migrator add and ghe-migrator export steps to tell ghe-migrator to continue operating on the same export.

    > 101 models added to export
    > Migration GUID: example-migration-guid
    > Number of records in this migration:
    > users                        |  5
    > organizations                |  1
    > repositories                 |  1
    > teams                        |  3
    > protected_branches           |  1
    > pull_request_reviews         |  1
    > milestones                   |  1
    > issues                       |  3
    > pull_requests                |  5
    > pull_request_review_comments |  4
    > commit_comments              |  2
    > issue_comments               | 10
    > issue_events                 | 63
    > releases                     |  3
    > attachments                  |  4
    > projects                     |  2

    Each time you add a new repository with an existing Migration GUID it will update the existing export. If you run ghe-migrator add again without a Migration GUID it will start a new export and generate a new Migration GUID. Do not re-use the Migration GUID generated during an export when you start preparing your migration for import.

  6. If you locked the source repository, you can use the ghe-migrator target_url command to set a custom lock message on the repository page that links to the repository's new location. Pass the source repository URL, the target repository URL, and the Migration GUID from Step 5:

    $ ghe-migrator target_url https://hostname/username/reponame https://target_hostname/target_username/target_reponame -g MIGRATION_GUID
  7. To add more repositories to the same export, use the ghe-migrator add command with the -g flag. You'll pass in the new repository URL and the Migration GUID from Step 5:

    $ ghe-migrator add https://hostname/username/other_reponame -g MIGRATION_GUID --lock
  8. When you've finished adding repositories, generate the migration archive using the ghe-migrator export command with the -g flag and the Migration GUID from Step 5:

    $ ghe-migrator export -g MIGRATION_GUID
    > Archive saved to: /data/github/current/tmp/MIGRATION_GUID.tar.gz
    • マイグレーションファイルをステージングする場所を指定するには、コマンドの末尾に --staging-path=/full/staging/path を入力します。デフォルトは /data/user/tmp です。
  9. Close the connection to GitHub Enterprise Server インスタンス:

    $ exit
    > logout
    > Connection to hostname closed.
  10. scpコマンドを使って移行アーカイブを使用中のコンピュータにコピーしてください。 アーカイブファイルの名前には移行GUIDが含まれます。

    $ scp -P 122 admin@hostname:/data/github/current/tmp/MIGRATION_GUID.tar.gz ~/Desktop
  11. アーカイブされたマイグレーションデータを GitHub Enterprise Server のインスタンスにインポートする方法については「GitHub Enterprise Server へのマイグレーションデータのインポート」を参照してください。

担当者にお尋ねください

探しているものが見つからなかったでしょうか?

弊社にお問い合わせください