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.
Note: Locking a repository prevents users from pushing to the repository or modifying a repository's resources, like issues, labels, milestones, wikis, and comments. New teams and collaborators can't be associated with a locked repository.
If you're performing a trial run, you don't need to lock repositories. Otherwise, it's highly recommended. Weitere Informationen finden Sie unter „Informationen zu Migrationen“.
-
SSH into Ihre GitHub Enterprise Server-Instanz.
$ 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
-
-
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. 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. -
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
- To specify where migration files should be staged append the command with
--staging-path=/full/staging/path
. Defaults to/data/user/tmp
.
- To specify where migration files should be staged append the command with
-
Close the connection to 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
-
To import the archived migration data to a GitHub Enterprise Server instance, see "Importing migration data to GitHub Enterprise Server".