Artikelversion: Enterprise Server 2.17
GitHub Enterprise Server-Quell-Repositorys exportieren
Nachdem Sie die Quell-Repositorys gesperrt haben, können Sie sie einzeln oder per Massenvorgang exportieren, indem Sie eine Liste von Repository-URLs in einer Textdatei verwenden. Für den Importprozess erstellen Sie anschließend ein einzelnes Migrationsarchiv.
Hinweis: Wenn ein Repository gesperrt wird, werden Benutzer daran gehindert, Elemente auf das Repository zu übertragen oder die Ressourcen, beispielsweise Issues, Kennzeichnungen, Meilensteine, Wikis und Kommentare eines Repositorys zu ändern. Es ist nicht möglich, neue Teams und Mitarbeiter einem gesperrten Repository zuzuordnen.
Wenn Du einen Probelauf durchführst, musst Du die Repositorys nicht sperren. Andernfalls wird dies dringend empfohlen. Weitere Informationen findest Du unter „Informationen zu Migrationen“.
-
Stelle eine SSH-Verbindung zu Ihre GitHub Enterprise Server-Instanz her.
$ ssh -p 122 admin@HOSTNAME
-
Führen Sie den Befehl
ghe-migrator add
mit der URL des Repositorys aus, um ein Repository auf den Export vorzubereiten:- Hängen Sie beim Sperren des Repositorys dem Befehl
--lock
an. Wenn Sie einen Probelauf ausführen, ist--lock
nicht erforderlich.$ ghe-migrator add https://hostname/username/reponame --lock
- Dateianhänge können ausgeschlossen werden. Hängen Sie dazu dem Befehl
--exclude_attachments
an. Dateianhänge können groß sein und blähen Ihr endgültiges Migrationsarchiv ggf. unnötig auf. - Um mehrere Repositorys gleichzeitig für den Export vorzubereiten, erstellen Sie eine Textdatei, in der die URL jedes Repositorys in einer separaten Zeile aufgelistet wird, und führen Sie den Befehl
ghe-migrator add
mit dem Flag-i
und dem Pfad zu Ihrer Textdatei aus.$ ghe-migrator add -i PATH/TO/YOUR/REPOSITORY_URLS.txt
- Hängen Sie beim Sperren des Repositorys dem Befehl
-
Geben Sie Ihren GitHub Enterprise Server-Benutzernamen ein, wenn Sie dazu aufgefordert werden:
Enter username authorized for migration: admin
-
Geben Sie das unter „GitHub Enterprise Server-Quellinstanz vorbereiten“ von Ihnen erstellte Zugriffstoken ein, wenn Sie zur Eingabe eines persönlichen Zugriffstokens aufgefordert werden:
Enter personal access token: **************
-
Nach Abschluss des Befehls
ghe-migrator add
werden der eindeutige zum Identifizieren dieses Exports generierte „Migrations-GUID“ und eine Liste der dem Export hinzugefügten Ressourcen ausgegeben. Diesen generierten Migrations-GUID verwenden Sie in den nachfolgenden Schrittenghe-migrator add
undghe-migrator export
, umghe-migrator
anzuweisen, weiterhin am selben Export zu arbeiten.> 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
Sobald Sie ein neues Repository mit einem vorhandenen Migrations-GUID hinzufügen, wird der vorhandene Export aktualisiert. Wenn Sie
ghe-migrator add
erneut ausführen, ohne einen Migrations-GUID zu verwenden, wird ein neuer Export gestartet und ein neuer Migrations-GUID generiert. Verwenden Sie nicht den während eines Exports generierten Migrations-GUID, wenn Sie Ihre Migration auf den Import vorbereiten. -
Falls Sie das Quell-Repository gesperrt haben, können Sie den Befehl
ghe-migrator target_url
ausführen, um eine benutzerdefinierte Sperrmeldung auf der Repository-Seite festzulegen, die auf den neuen Speicherort des Repositorys verweist. Geben Sie die URL des Quell-Repositorys, die URL des Ziel-Repositorys und den Migrations-GUID aus Schritt 5 weiter:$ ghe-migrator target_url https://hostname/username/reponame https://target_hostname/target_username/target_reponame -g MIGRATION_GUID
-
Führen Sie den Befehl
ghe-migrator add
mit dem Flag-g
aus, um demselben Export weitere Repositorys hinzuzufügen. Sie übergeben die URL des neuen Repositorys und den Migrations-GUID aus Schritt 5:$ ghe-migrator add https://hostname/username/other_reponame -g MIGRATION_GUID --lock
-
Generieren Sie nach dem Hinzufügen der Repositorys mit dem Befehl
ghe-migrator export
und dem Flag-g
sowie dem Migrations-GUID aus Schritt 5 das Migrationsarchiv:$ ghe-migrator export -g MIGRATION_GUID > Archive saved to: /data/github/current/tmp/MIGRATION_GUID.tar.gz
- Ergänze den Befehl mit
--staging-path=/full/staging/path
, um anzugeben, wo die Migrationsdateien vorgemerkt werden sollen. Der Standardwert lautet/data/user/tmp
.
- Ergänze den Befehl mit
-
Schließen Sie die Verbindung zu Ihre GitHub Enterprise Server-Instanz:
$ exit > logout > Connection to hostname closed.
-
Führen Sie den Befehl
scp
aus, um das Migrationsarchiv auf Ihren Computer zu kopieren. Die Archivdatei wird mit dem Migrations-GUID benannt:$ scp -P 122 admin@hostname:/data/github/current/tmp/MIGRATION_GUID.tar.gz ~/Desktop
-
Informationen zum Importieren der archivierten Migrationsdaten auf eine GitHub Enterprise Server-Instanz findest Du unter „Migrationsdaten in GitHub Enterprise Server importieren“.