Informationen zum programmgesteuerten Import von Repositorys
In der folgenden Anleitung erfahren Sie, wie Sie "Source and History"-Migrationen von Git-Repositorys programmgesteuert zu GitHub ausführen. Je nachdem, wo das Repository gespeichert ist, stehen Ihnen verschiedene Optionen zur Verfügung.
Weitere Informationen zu „Einbindung und Verlauf“ und anderen Migrationstypen finden Sie unter „Planen der Migration zu GitHub“.
Der Begriff „Einbindungs-Repository“ bezieht sich auf das Repository, das Sie importieren, und „importiertes Repository“ bezieht sich auf das neue Repository, das Sie erstellen.
Verwenden von Forks
Wenn sich das Quell-Repository auf GitHub befindet, können Sie möglicherweise eine Verzweigung verwenden, anstatt das Repository zu importieren. Mit Forks kannst du Änderungen an einem Projekt vornehmen, ohne dass sich dies auf das ursprüngliche Repository (Upstreamrepository) auswirkt. Nachdem du ein Repository geforkt hast, kannst du Updates aus dem Upstreamrepository abrufen, um deinen Fork auf dem neuesten Stand zu halten. Mithilfe von Pull Requests kannst du über deinen Fork auch Änderungen am Upstreamrepository vorschlagen. Weitere Informationen finden Sie unter „Informationen zu Forks“.
Sie können ein Repository programmgesteuert mithilfe der REST-API forken. Weitere Informationen findest du unter REST-API-Endpunkte für forken.
Wenn Ihr Anwendungsfall einem der folgenden Kriterien entspricht, können Sie kein Forking anstatt eines direkten Imports Ihres Repositorys verwenden.
- Sie möchten, dass das importierte Repository demselben Benutzer oder derselben Organisation wie das Einbindungs-Repository gehört.
- Sie möchten, dass ein Benutzer oder eine Organisation dasselbe Einbindungs-Repository mehrmals importieren kann.
Informationen zu Repository-Vorlagen
Wenn sich das Quell-Repository auf GitHub befindet, können Sie möglicherweise Repository-Vorlagen verwenden. Sie können aus einem vorhandenen Repository eine Vorlage erstellen. Jeder, der Zugriff auf das Vorlagen-Repository hat, kann ein neues Repository auf der Grundlage der Vorlage mit derselben Verzeichnisstruktur, denselben Branches und Dateien erstellen. Weitere Informationen finden Sie unter „Eine Repository-Vorlage erstellen“.
Um Repository-Vorlagen zu verwenden, müssen Sie entweder über Lesezugriff auf ein vorhandenes Repository verfügen, das eine Vorlage ist, oder Sie müssen Zugriff haben, um eine Vorlage zu erstellen.
Mithilfe der REST-API können Sie programmgesteuert ein Repository aus einer Repositoryvorlage erstellen. Weitere Informationen findest du unter REST-API-Endpunkte für Repositorys.
GitHub Enterprise Importer verwenden
Wenn das Quell-Repository auf GitHub, GitHub Enterprise Server, Azure DevOps Services, Bitbucket Server oder Bitbucket Data Center gehostet wird, können Sie das Repository mit GitHub Enterprise Importer importieren. Weitere Informationen findest du unter Informationen zu GitHub Enterprise Importer.
Zusätzlich zum Quell- und Versionsverwaltungsverlauf migriert GitHub Enterprise Importer auch Probleme, Pull Requests, Einstellungen und vieles mehr.
Um GitHub Enterprise Importer zu verwenden, benötigen Sie einen Zugriff als Administrator auf das Einbindungs-Repository.
Sie können Repositorys programmgesteuert über GitHub Enterprise Importer mithilfe der GraphQL-API importieren.
Verwenden von Git CLI
Wenn es sich bei dem Einbindungs-Repository um ein Git-Repository handelt, können Sie die Git CLI programmgesteuert aus Ihrem Code aufrufen. Sie können mithilfe der REST-API von GitHub programmgesteuert ein Repository erstellen und dann Befehle wie git clone
und git push
verwenden, um das Repository in GitHub zu importieren.
Wie Sie die Git CLI aufrufen, hängt von der Sprache Ihres Codes ab. So können Sie beispielsweise in Node.js das child_process
-Modul oder in Ruby das open3
-Modul verwenden. Weitere Informationen finden Sie unter Untergeordneter Prozess in der Node.js-Dokumentation oder im Ruby/open3-Repository auf GitHub.
Um Git CLI verwenden zu können, müssen Sie Zugriff auf Git auf dem System haben, das Ihre Anwendung hosten soll. Weitere Informationen finden Sie in der Git-Dokumentation unter Erste Schritte – Git installieren.
Verwenden der GitHub CLI
Wenn das Einbindungs-Repository ein Git-Repository ist, können Sie die GitHub CLI programmgesteuert aus Ihrem Code aufrufen. Sie können mit gh repo create
ein Repository erstellen. Weitere Informationen findest du unter Informationen zur GitHub CLI.