Skip to main content

Ein Git-Repository über die Befehlszeile importieren

Das Importieren von Git-Projekten mit der Befehlszeile eignet sich dann, wenn dein Code in einem privaten Netzwerk gehostet ist.

Bevor du startest, stelle sicher, dass Dir Folgendes vorliegt:

  • Dein GitHub AE-Benutzername
  • Die Klon-URL für das externe Repository, z. B. https://external-host.com/user/repo.git oder git://external-host.com/user/repo.git (eventuell mit user@ vor dem Domänennamen external-host.com)

Um die Methode vorzuführen und zu erläutern, verwenden wir

  • Ein externes Konto mit dem Namen extuser
  • Einen externen Git-Host namens https://external-host.com
  • Ein persönliches Konto für GitHub AE mit der Bezeichnung ghuser
  • Ein Repository auf GitHub AE mit dem Namen repo.git
  1. Erstelle ein neues Repository auf GitHub AE. Du wirst Dein externes Git-Repository in dieses neue Repository importieren.
  2. Erstelle in der Befehlszeile einen „leeren“ Klon des Repositorys mit der externen Klon-URL. Dadurch wird eine vollständige Kopie der Daten angelegt, aber ohne Arbeitsverzeichnis für die Bearbeitung von Dateien. Außerdem wird der saubere Export aller alten Daten gewährleistet.
    $ git clone --bare https://external-host.com/EXTUSER/REPO.git
    # Makes a bare clone of the external repository in a local directory
  3. Übertrage das lokal geklonte Repository mit der „mirror"-Option (Spiegel-Option) zu GitHub AE, wodurch sichergestellt wird, dass alle Verweise wie Branches und Tags in das importierte Repository kopiert werden.
    $ cd REPO.git
    $ git push --mirror https://HOSTNAME/USER/REPO.git
    # Pushes the mirror to the new repository on GitHub AE
  4. Entferne das temporäre lokale Repository.
    $ cd ..
    $ rm -rf REPO.git