Bevor du startest, stelle sicher, dass Dir Folgendes vorliegt:
- Dein GitHub-Benutzername
- Die Klon-URL für das externe Repository, z. B.
https://external-host.com/user/repo.git
odergit://external-host.com/user/repo.git
(eventuell mituser@
vor dem Domänennamenexternal-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 mit der Bezeichnung ghuser
- Ein Repository auf GitHub.com mit dem Namen repo.git
- Erstelle ein neues Repository auf GitHub. Du wirst Dein externes Git-Repository in dieses neue Repository importieren.
- 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
- Übertrage das lokal geklonte Repository mit der „mirror"-Option (Spiegel-Option) zu GitHub, wodurch sichergestellt wird, dass alle Verweise wie Branches und Tags in das importierte Repository kopiert werden.
$ cd REPO.git $ git push --mirror https://github.com/USER/REPO.git # Pushes the mirror to the new repository on GitHub.com
- Entferne das temporäre lokale Repository.
$ cd .. $ rm -rf REPO.git