Daten aus Drittanbieter-Quellcodeverwaltungssystemen importieren

Mit der Reihe an „git-import“-Tools können Sie in Git-Repositorys auf GitHub Enterprise Server Elemente von Subversion, Mercurial und der Team Foundation-Versionskontrolle importieren.

Projekte aus Mercurial importieren

  1. Stellen Sie eine SSH-Verbindung zu your GitHub Enterprise Server instance her. Weitere Informationen findest Du unter "Auf die administrative Shell (SSH) zugreifen."

    $ ssh -p 122 admin@HOSTNAME
  2. Erstellen Sie einen Klon im Rohdatenformat des Projekts. Führen Sie dazu den folgenden Befehl aus. Geben Sie dazu die URL des Quellprojekts und einen Pfad zum temporären Repository an:

    $ git-import-hg-raw HG-CLONE-URL /PATH/REPO-NAME.git
    # Erstellt ein neues Repository mit mindestens einem Git-Ref in „refs/import/“ am angegebenen Pfad.
  3. Überprüfe die Komma-getrennte Datei (CSV) in /PATH/REPO-NAME.git/git-import/raw-authors.csv. Sie sollte die folgenden Spalten enthalten:

    • ID: Der im ursprünglichen Repository gespeicherte Autor, gefolgt von einem eindeutigen Kennzeichner
    • NAME: Der im ursprünglichen Repository gespeicherte Autor

    Um Autoren aus dem ursprünglichen Repository einer E-Mail-Adresse und einem Namen zuzuordnen, erstellst Du eine neue CSV-Datei mit den Spalten ID,(ignored),GIT_EMAIL,GIT_NAME, wodurch die Autorinformationen für alles durch „ID“ mit „GIT_EMAIL“ und „GIT_NAME“ ersetzt werden.

    Beispiel:

    • Ursprüngliche Autor-ID: octocat@111111-2222-3333-4444-55555555555

    • Neue E-Mail-Adresse: octocat@github.com

    • Neuer Name: The Octocat

      Um den ursprünglichen Autor dem neuen Git-Benutzer zuzuordnen, sollte in der CSV-Datei die folgende Zeile enthalten sein:

      octocat@111111-2222-3333-4444-55555555555, ,octocat@github.com,The Octocat

  4. Schreibt die Autoren und Branches mit der CSV-Datei um:

    $ git-import-rewrite --flavor hg --authors /PATH/AUTHORS-MAP-FILE.csv /PATH/REPO-NAME.git
  5. Erstellen Sie ein leeres Repository auf GitHub Enterprise Server, falls Sie dies nicht bereits erledigt haben.

  6. Ändere das aktuelle Arbeitsverzeichnis in Dein lokales Repository.

  7. Übertragen Sie das importierte Repository per Push-Vorgang an GitHub Enterprise Server:

    $ git push --mirror PUSH-URL-ON-GITHUB-ENTERPRISE

Projekte aus Subversion importieren

  1. Stellen Sie eine SSH-Verbindung zu your GitHub Enterprise Server instance her. Weitere Informationen findest Du unter "Auf die administrative Shell (SSH) zugreifen."

    $ ssh -p 122 admin@HOSTNAME
  2. Erstellen Sie einen Klon im Rohdatenformat des Projekts. Führen Sie dazu den folgenden Befehl aus. Geben Sie dazu die URL des Quellprojekts und einen Pfad zum temporären Repository an:

    $ git-import-svn-raw SVN-CLONE-URL /PATH/REPO-NAME.git
    # Erstellt ein neues Repository mit mindestens einem Git-Ref in „refs/import/“ am angegebenen Pfad.
  3. Überprüfe die Komma-getrennte Datei (CSV) in /PATH/REPO-NAME.git/git-import/raw-authors.csv. Sie sollte die folgenden Spalten enthalten:

    • ID: Der im ursprünglichen Repository gespeicherte Autor, gefolgt von einem eindeutigen Kennzeichner
    • NAME: Der im ursprünglichen Repository gespeicherte Autor

    Um Autoren aus dem ursprünglichen Repository einer E-Mail-Adresse und einem Namen zuzuordnen, erstellst Du eine neue CSV-Datei mit den Spalten ID,(ignored),GIT_EMAIL,GIT_NAME, wodurch die Autorinformationen für alles durch „ID“ mit „GIT_EMAIL“ und „GIT_NAME“ ersetzt werden.

    Beispiel:

    • Ursprüngliche Autor-ID: octocat@111111-2222-3333-4444-55555555555

    • Neue E-Mail-Adresse: octocat@github.com

    • Neuer Name: The Octocat

      Um den ursprünglichen Autor dem neuen Git-Benutzer zuzuordnen, sollte in der CSV-Datei die folgende Zeile enthalten sein:

      octocat@111111-2222-3333-4444-55555555555, ,octocat@github.com,The Octocat

  4. Schreibt die Autoren und Branches mit der CSV-Datei um:

    $ git-import-rewrite --flavor svn --authors /PATH/AUTHORS-MAP-FILE.csv /PATH/REPO-NAME.git
  5. Erstellen Sie ein leeres Repository auf GitHub Enterprise Server, falls Sie dies nicht bereits erledigt haben.

  6. Ändere das aktuelle Arbeitsverzeichnis in Dein lokales Repository.

  7. Übertragen Sie das importierte Repository per Push-Vorgang an GitHub Enterprise Server:

    $ git push --mirror PUSH-URL-ON-GITHUB-ENTERPRISE

Projekte aus der Team Foundation-Versionskontrolle importieren

  1. Stellen Sie eine SSH-Verbindung zu your GitHub Enterprise Server instance her. Weitere Informationen findest Du unter "Auf die administrative Shell (SSH) zugreifen."

    $ ssh -p 122 admin@HOSTNAME
  2. Erstellen Sie einen Klon im Rohdatenformat des Projekts. Führen Sie dazu den folgenden Befehl aus. Geben Sie dazu die URL des Quellprojekts und einen Pfad zum temporären Repository an:

    $ git-import-tfs-raw TEAM-FOUNDATION-CLONE-URL /PATH/REPO-NAME.git
    # Erstellt ein neues Repository mit mindestens einem Git-Ref in „refs/import/“ am angegebenen Pfad.
  3. Überprüfe die Komma-getrennte Datei (CSV) in /PATH/REPO-NAME.git/git-import/raw-authors.csv. Sie sollte die folgenden Spalten enthalten:

    • ID: Der im ursprünglichen Repository gespeicherte Autor, gefolgt von einem eindeutigen Kennzeichner
    • NAME: Der im ursprünglichen Repository gespeicherte Autor

    Um Autoren aus dem ursprünglichen Repository einer E-Mail-Adresse und einem Namen zuzuordnen, erstellst Du eine neue CSV-Datei mit den Spalten ID,(ignored),GIT_EMAIL,GIT_NAME, wodurch die Autorinformationen für alles durch „ID“ mit „GIT_EMAIL“ und „GIT_NAME“ ersetzt werden.

    Beispiel:

    • Ursprüngliche Autor-ID: octocat@111111-2222-3333-4444-55555555555

    • Neue E-Mail-Adresse: octocat@github.com

    • Neuer Name: The Octocat

      Um den ursprünglichen Autor dem neuen Git-Benutzer zuzuordnen, sollte in der CSV-Datei die folgende Zeile enthalten sein:

      octocat@111111-2222-3333-4444-55555555555, ,octocat@github.com,The Octocat

  4. Schreibt die Autoren und Branches mit der CSV-Datei um:

    $ git-import-rewrite --flavor tfs --authors /PATH/AUTHORS-MAP-FILE.csv /PATH/REPO-NAME.git
  5. Erstellen Sie ein leeres Repository auf GitHub Enterprise Server, falls Sie dies nicht bereits erledigt haben.

  6. Ändere das aktuelle Arbeitsverzeichnis in Dein lokales Repository.

  7. Übertragen Sie das importierte Repository per Push-Vorgang an GitHub Enterprise Server:

    $ git push --mirror PUSH-URL-ON-GITHUB-ENTERPRISE

Weiterführende Informationen

Did this doc help you?Privacy policy

Help us make these docs great!

All GitHub docs are open source. See something that's wrong or unclear? Submit a pull request.

Make a contribution

Oder, learn how to contribute.