Hallo, Entdecker! An dieser Seite wird aktiv gearbeitet, oder sie wird noch übersetzt. Die neuesten und genauesten Informationen findest Du in unserer englischsprachigen Dokumentation.

Diese Version von GitHub Enterprise wird eingestellt am Diese Version von GitHub Enterprise wurde eingestellt am 2020-08-20. Es wird keine Patch-Freigabe vorgenommen, auch nicht für kritische Sicherheitsprobleme. Für eine bessere Leistung, verbesserte Sicherheit und neue Features nimm ein Upgrade auf die neueste Version von GitHub Enterprise vor. Wende Dich an den GitHub Enterprise-Support, um Hilfe beim Upgrade zu erhalten.

Artikelversion: Enterprise Server 2.18

Exporting migration data from your enterprise

To change platforms or move from a trial instance to a production instance, you can export migration data from a GitHub Enterprise Server instance by preparing the instance, locking the repositories, and generating a migration archive.

Inhalt dieses Artikels

Preparing the GitHub Enterprise Server source instance

  1. Verifizieren Sie, dass Sie auf der GitHub Enterprise Server-Quelle ein Websiteadministrator sind. Dazu empfiehlt es sich zu verifizieren, dass Sie eine SSH-Verbindung zur Instanz herstellen können.

  2. Generiere ein Zugriffstoken mit den Bereichen repo und admin:org auf der GitHub Enterprise Server-Quellinstanz.

  3. Erstelle zum Minimieren der Ausfallzeit eine Liste der Repositorys, die Du von der Quellinstanz exportieren möchtest. Du kannst mehrere Repositorys gleichzeitig zu einem Export hinzufügen. verwende dazu eine Textdatei, in der die URL jedes Repositorys in einer separaten Zeile aufgelistet wird.

Exporting the GitHub Enterprise Server source repositories

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“.

  1. Stelle eine SSH-Verbindung zu Ihre GitHub Enterprise Server-Instanz her.

    $ ssh -p 122 admin@HOSTNAME
  2. 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
  3. Geben Sie Ihren GitHub Enterprise Server-Benutzernamen ein, wenn Sie dazu aufgefordert werden:

    Enter username authorized for migration:  admin
  4. 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:  **************
  5. 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 Schritten ghe-migrator add und ghe-migrator export, um ghe-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.

  6. 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
  7. 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
  8. 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.
  9. Schließen Sie die Verbindung zu Ihre GitHub Enterprise Server-Instanz:

    $ exit
    > logout
    > Connection to hostname closed.
  10. 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
  11. Informationen zum Importieren der archivierten Migrationsdaten auf eine GitHub Enterprise Server-Instanz findest Du unter „Migrationsdaten in GitHub Enterprise Server importieren“.

Menschliche Unterstützung einholen

Du kannst das Gesuchte nicht finden?

Kontakt