Anwenden der importierten Daten auf GitHub Enterprise Server
Bevor du Daten zu deinem GitHub Enterprise Server migrieren kannst, musst du die Daten vorbereiten und eventuelle Konflikte beheben. Weitere Informationen findest du unter Vorbereiten der Migration von Daten zu GitHub Enterprise Server.
Nachdem du die Daten vorbereitet und Konflikte beseitigt hast, kannst du die importierten Daten auf GitHub Enterprise Server anwenden.
- Stelle als Websiteadministrator eine SSH-Verbindung mit deiner GitHub Enterprise Server-Zielinstanz her.
ssh -p 122 admin@HOSTNAME
-
Starte den Importvorgang mit dem Befehl
ghe-migrator import
. du benötigst Folgendes:- Deine Migrations-GUID. Weitere Informationen findest du unter Vorbereiten der Migration von Daten zu GitHub Enterprise Server.
- Dein personal access token für die Authentifizierung. Das von dir verwendete personal access token gilt nur für die Authentifizierung als Websiteadministrator und erfordert keinen bestimmten Bereich. Weitere Informationen findest du unter Verwalten deiner persönlichen Zugriffstoken.
$ ghe-migrator import /home/admin/MIGRATION-GUID.tar.gz -g MIGRATION-GUID -u USERNAME -p TOKEN > Starting GitHub::Migrator > Import 100% complete /
- Um anzugeben, wo Migrationsdateien gestaget werden sollen, füge dem Befehl
--staging-path=/full/staging/path
an. Wird standardmäßig auf/data/user/tmp
festgelegt.
Migrationsdaten überprüfen
Mit ghe-migrator audit
wird standardmäßig jeder Datensatz zurückgegeben. Dadurch kannst du die Datensätze zudem filtern nach
- den Datensatztypen,
- dem Zustand der Datensätze.
Die Datensatztypen stimmen mit denen in den migrierten Daten überein.
Filter für Datensatztypen
Eintragstyp | Filtername |
---|---|
Benutzer | user |
Organisationen | organization |
Repositorys | repository |
Teams | team |
Meilensteine | milestone |
Projektboards | project |
Probleme | issue |
Issue-Kommentare | issue_comment |
Pull Requests | pull_request |
Pull-Request-Reviews | pull_request_review |
Commit-Kommentare | commit_comment |
Pull-Request-Review-Kommentare | pull_request_review_comment |
Releases | release |
Bei Pull Requests oder Issues ergriffene Maßnahmen | issue_event |
Geschützte Branches | protected_branch |
Filter für Datensatzzustände
Datensatzzustand | BESCHREIBUNG |
---|---|
export | Der Datensatz wird exportiert. |
import | Der Datensatz wird importiert. |
map | Der Datensatz wird zugeordnet. |
rename | Der Datensatz wird umbenannt. |
merge | Der Datensatz wird gemergt. |
exported | Der Datensatz wurde erfolgreich exportiert. |
imported | Der Datensatz wurde erfolgreich importiert. |
mapped | Der Datensatz wurde erfolgreich zugeordnet. |
renamed | Der Datensatz wurde erfolgreich umbenannt. |
merged | Der Datensatz wurde erfolgreich gemergt. |
failed_export | Fehler beim Export des Datensatzes. |
failed_import | Fehler beim Import des Datensatzes. |
failed_map | Fehler beim Zuordnen des Datensatzes. |
failed_rename | Fehler beim Umbenennen des Datensatzes. |
failed_merge | Fehler beim Mergen des Datensatzes. |
Überwachte Datensätze filtern
Mit dem Befehl ghe-migrator audit
kannst du unter Verwendung des Flags -m
nach dem Datensatztyp filtern. Ebenso kannst du mit dem Flag -s
nach dem Importstatus filtern. Der Befehl sieht wie folgt aus:
ghe-migrator audit -m RECORD_TYPE -s STATE -g MIGRATION-GUID
Wenn du beispielsweise alle erfolgreich importierten Organisationen und Teams anzeigen möchtest, würdest du Folgendes eingeben:
$ ghe-migrator audit -m organization,team -s mapped,renamed -g MIGRATION-GUID
> model_name,source_url,target_url,state
> organization,https://gh.source/octo-org/,https://ghe.target/octo-org/,renamed
Wir empfehlen dringend, jeden fehlgeschlagenen Import zu überprüfen. Dazu gibst du Folgendes ein:
$ ghe-migrator audit -s failed_import,failed_map,failed_rename,failed_merge -g MIGRATION-GUID
> model_name,source_url,target_url,state
> user,https://gh.source/octocat,https://gh.target/octocat,failed
> repository,https://gh.source/octo-org/octo-project,https://ghe.target/octo-org/octo-project,failed
Kontaktiere GitHub Enterprise Support, wenn du Bedenken in Bezug auf fehlgeschlagene Importvorgänge hast.
Abschließen des Imports in GitHub Enterprise Server
Nachdem deine Migration auf die Zielinstanz angewendet wurde und du die Migration überprüft hast, entsperrst du die Repositorys und löschst sie von der Quellinstanz. Vor dem Löschen deiner Quelldaten solltest du etwa zwei Wochen warten, um sicherzugehen, dass alles erwartungsgemäß funktioniert.
Repositorys auf der Zielinstanz entsperren
-
Melde dich über SSH bei deine GitHub Enterprise Server-Instanz an. Wenn deine Instanz mehrere Knoten umfasst, wenn z. B. Hochverfügbarkeit oder Georeplikation konfiguriert ist, wird SSH im primären Knoten konfiguriert. Wenn du einen Cluster verwendest, kannst du SSH in einen beliebigen Knoten einfügen. Weitere Informationen zum SSH-Zugriff findest du unter Auf die Verwaltungsshell (SSH) zugreifen.
ssh -p 122 admin@HOSTNAME
-
Entsperre alle importierten Repositorys mit dem
ghe-migrator unlock
-Befehl. Du benötigst Deine Migrations-GUID:
$ ghe-migrator unlock -g MIGRATION-GUID
> Unlocked octo-org/octo-project
Repositorys auf der Quellinstanz entsperren
Entsperren von Repositorys einer Organisation auf GitHub.com
Um die Repositorys einer GitHub.com-Organisation zu entsperren, sendest du eine DELETE
-Anforderung an den Endpunkt zum Entsperren der Migration. du benötigst Folgendes:
- Dein Zugriffstoken für die Authentifizierung
- Die eindeutige
id
der Migration - den Namen des zu entsperrenden Repositorys
curl -H "Authorization: Bearer GITHUB_ACCESS_TOKEN" -X DELETE \
-H "Accept: application/vnd.github.wyandotte-preview+json" \
https://api.github.com/orgs/ORG-NAME/migrations/ID/repos/REPO_NAME/lock
Löschen von Repositorys aus einer Organisation auf GitHub.com
Nachdem du die Repositorys der GitHub.com-Organisation entsperrt hast, solltest du alle zuvor migrierten Repositorys mit dem Endpunkt zum Löschen von Repositorys löschen. du benötigst dein Zugriffstoken für die Authentifizierung:
curl -H "Authorization: Bearer GITHUB_ACCESS_TOKEN" -X DELETE \
https://api.github.com/repos/ORG-NAME/REPO_NAME
Repositorys auf einer GitHub Enterprise Server-Instanz entsperren
-
Melde dich über SSH bei deine GitHub Enterprise Server-Instanz an. Wenn deine Instanz mehrere Knoten umfasst, wenn z. B. Hochverfügbarkeit oder Georeplikation konfiguriert ist, wird SSH im primären Knoten konfiguriert. Wenn du einen Cluster verwendest, kannst du SSH in einen beliebigen Knoten einfügen. Weitere Informationen zum SSH-Zugriff findest du unter Auf die Verwaltungsshell (SSH) zugreifen.
ssh -p 122 admin@HOSTNAME
-
Entsperre alle importierten Repositorys mit dem
ghe-migrator unlock
-Befehl. Du benötigst Deine Migrations-GUID:
$ ghe-migrator unlock -g MIGRATION-GUID
> Unlocked octo-org/octo-project