GitHub Enterprise Server ソースインスタンスを準備する
- 
GitHub Enterprise Server ソースのサイト管理者であることを確認します。 そのための最善の方法は、インスタンスへのSSHが可能であることを確認することです。 
- 
GitHub Enterprise Server ソースインスタンス上での repo及びadmin:orgスコープでアクセストークンを生成してください。。
- 
ダウンタイムを最小化するには、ソースインスタンスからエクスポートしたいリポジトリのリストを作成してください。 各行にそれぞれのリポジトリのURLをリストアップしたテキストファイルを使えば、複数のリポジトリをエクスポートに一度に追加できます。 
GitHub Enterprise Server ソースリポジトリをエクスポートする
ノート: リポジトリをロックすると、ユーザはそのリポジトリにプッシュしたり、Issue、ラベル、マイルストーン、wiki、コメントといったリポジトリのリソースを修正したりできなくなります。 新しいTeamやコラボレータは、ロックされたリポジトリに関連づけできません。
トライアル実行をしているなら、リポジトリをロックする必要はありません。 そうでない場合は、ロックすることを強くおすすめします。 詳細は「移行について」を参照してください。
- 
your GitHub Enterprise Server instanceにSSHでアクセスしてください。 詳しい情報については「管理シェル(SSH)にアクセスする」を参照してください。 $ ssh -p 122 admin@HOSTNAME
- 
エクスポートするリポジトリを準備するには、 ghe-migrator addコマンドをリポジトリの URL と一緒に使用します:- リポジトリをロックする場合は、コマンドの末尾に --lockを付けます。 トライアル実行を行う場合は、--lockは必要ありません。$ ghe-migrator add https://hostname/username/reponame --lock
- コマンドの後ろに --exclude_attachmentsを付けると添付ファイルを除外できます。 添付ファイルは大きくなる場合があり、最終的なマイグレーションアーカイブを不必要に膨らませてしまう場合があります。
- エクスポートする複数のリポジトリを同時に準備するには、各リポジトリ URL を 1 行ずつ記載したテキストファイルを作成し、ghe-migrator addコマンドに-iフラグとテキストファイルのパスを付けて実行します。$ ghe-migrator add -i PATH/TO/YOUR/REPOSITORY_URLS.txt
 
- リポジトリをロックする場合は、コマンドの末尾に 
- 
入力を求められたら、GitHub Enterprise Server ユーザ名を入力します: Enter username authorized for migration: admin
- 
個人用アクセストークンを求められたら、「GitHub Enterprise Serverソースインスタンスの準備」で作成したアクセストークンを入力します。 Enter personal access token: **************
- 
ghe-migrator addが終了すると、このエクスポートと追加されたリソースのリストを識別するために生成されたユニークな"移行GUID"が出力されます。 生成されたGUIDは、後のghe-migrator add及びghe-migrator exportのステップで同じエクスポートに対して処理を続けるようghe-migratorに伝えるために使います。> 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既存の移行GUIDに対して新しいリポジトリを追加するたびに、既存のエクスポートが更新されます。 Migration GUIDなしで ghe-migrator addを再実行すると、新しいエクスポートが始まり、新しいMigration GUIDが生成されます。 インポートから移行の準備を始める場合には、エクスポート中に生成されるMigration GUIDを再利用しないでください。
- 
ソースリポジトリをロックした場合、 ghe-migrator target_urlコマンドを使ってリポジトリの新しい場所へリンクするカスタムのロックメッセージをリポジトリのページに設定できます。 ソースリポジトリのURL、ターゲットリポジトリのURL、そしてステップ5の移行GUIDを渡してください。$ ghe-migrator target_url https://hostname/username/reponame https://target_hostname/target_username/target_reponame -g MIGRATION_GUID
- 
同じエクスポートにさらにリポジトリを追加するには、 ghe-migrator addコマンドに-gフラグを付けて実行します。 これで新しいリポジトリの URL とステップ 5 の移行 GUID を渡します。$ ghe-migrator add https://hostname/username/other_reponame -g MIGRATION_GUID --lock
- 
リポジトリを追加し終えたなら、 -gフラグとステップ5の移行GUIDと共にghe-migrator exportを使い、移行アーカイブを生成してください。$ 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です。
 
- マイグレーションファイルをステージングする場所を指定するには、コマンドの末尾に
- 
your GitHub Enterprise Server instance への接続をクローズします。 $ exit > logout > Connection to hostname closed.
- 
scpコマンドを使って移行アーカイブを使用中のコンピュータにコピーしてください。 アーカイブファイルの名前には移行GUIDが含まれます。$ scp -P 122 admin@hostname:/data/github/current/tmp/MIGRATION_GUID.tar.gz ~/Desktop
- 
To prepare the archived migration data for import into a GitHub Enterprise Server instance, see "Preparing to migrate data to your enterprise".