Push Commits in ein zusätzliches Git-Repository - AWS CodeCommit

AWS CodeCommit ist für Neukunden nicht mehr verfügbar. Bestandskunden von AWS CodeCommit können den Service weiterhin wie gewohnt nutzen. Erfahren Sie mehr“

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Push Commits in ein zusätzliches Git-Repository

Sie können Ihr lokales Repository so konfigurieren, dass Änderungen mithilfe von Push an zwei Remote-Repositorys übertragen werden. Sie könnten beispielsweise Ihre vorhandene Git-Repository-Lösung weiterhin verwenden, während Sie AWS CodeCommit testen. Folgen Sie diesen grundlegenden Schritten, um Änderungen in Ihrem lokalen Repository in ein separates Git-Repository zu CodeCommit übertragen.

Tipp

Wenn Sie kein Git-Repository haben, können Sie ein leeres in einem anderen Dienst als diesem erstellen CodeCommit und dann Ihr CodeCommit Repository dorthin migrieren. Hierzu führen Sie Schritte aus, die den Anweisungen unter Migration zu CodeCommit weitestgehend entsprechen.

  1. Wechseln Sie über das Befehlszeilen- oder Terminalfenster zu Ihrem lokalen Repository-Verzeichnis und führen Sie den Befehl git remote -v aus. Die Ausgabe sollte folgendermaßen oder ähnlich aussehen:

    FürHTTPS:

    origin https://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo (fetch) origin https://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo (push)

    FürSSH:

    origin ssh://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo (fetch) origin ssh://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo (push)
  2. Führen Sie den git remote set-url --add --push origin git-repository-name Befehl aus, wo git-repository-name ist der URL und-Name des Git-Repositorys, in dem Sie Ihren Code hosten möchten. Hierdurch wird das Push-Ziel von origin in dieses Git-Repository geändert.

    Anmerkung

    git remote set-url --add --pushüberschreibt die Standardeinstellung URL für Pushes, sodass Sie diesen Befehl zweimal ausführen müssen, wie in späteren Schritten gezeigt wird.

    Mit dem folgenden Befehl wird beispielsweise der ursprüngliche Push in geändert some-URL/MyDestinationRepo:

    git remote set-url --add --push origin some-URL/MyDestinationRepo

    Mit diesem Befehl wird kein Inhalt zurückgegeben.

    Tipp

    Wenn Sie zu einem Git-Repository pushen, für das Anmeldeinformationen erforderlich sind, stellen Sie sicher, dass Sie diese Anmeldeinformationen in einem Credential-Helper oder in der Konfiguration von some-URL Zeichenfolge. Andernfalls schlagen Ihre Pushes an dieses Repository fehl.

  3. Führen Sie den Befehl git remote -v erneut aus. Die Befehlsausgabe sollte der folgenden ähneln:

    FürHTTPS:

    origin https://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo (fetch) origin some-URL/MyDestinationRepo (push)

    FürSSH:

    origin ssh://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo (fetch) origin some-URL/MyDestinationRepo (push)
  4. Fügen Sie jetzt das CodeCommit Repository hinzu. Führen Sie git remote set-url --add --push origin es erneut aus, diesmal mit dem URL und dem Repository-Namen Ihres CodeCommit Repositorys.

    Der folgende Befehl fügt beispielsweise den Push of origin zu https://git-codecom mit.us-east-2.amazonaws.com /v1/repos/ MyDemoRepo hinzu:

    HTTPSFür:

    git remote set-url --add --push origin https://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo

    FürSSH:

    git remote set-url --add --push origin ssh://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo

    Mit diesem Befehl wird kein Inhalt zurückgegeben.

  5. Führen Sie den Befehl git remote -v erneut aus. Die Befehlsausgabe sollte der folgenden ähneln:

    FürHTTPS:

    origin https://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo (fetch) origin some-URL/MyDestinationRepo (push) origin https://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo (push)

    FürSSH:

    origin ssh://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo (fetch) origin some-URL/MyDestinationRepo (push) origin ssh://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo (push)

    Sie haben jetzt zwei Git-Repositorys als Ziel für Ihre Pushs, aber Ihre Pushs gehen an some-URL/zuerst. MyDestinationRepo Wenn der Push an dieses Repository fehlschlägt, werden Ihre Commits nicht mithilfe von Push an die Repositorys übertragen.

    Tipp

    Wenn für das andere Repository Anmeldeinformationen erforderlich sind, die Sie manuell eingeben möchten, sollten Sie die Reihenfolge der Pushs so ändern, dass Sie CodeCommit zuerst die Übertragung durchführen. Führen Sie den Befehl git remote set-url --delete aus, um das Repository zu löschen, an das Pushes zuerst ausgeführt werden. Führen Sie anschließend den Befehl git remote set-url --add aus, um das Repository erneut hinzuzufügen, sodass es zum zweiten Push-Ziel in der Liste wird.

    Weitere Optionen findest du in deiner Git-Dokumentation.

  6. Um zu überprüfen, ob Sie nun einen Push an beide Remote-Repositorys ausführen, erstellen Sie mit einem Texteditor die folgende Textdatei in Ihrem lokalen Repository:

    bees.txt ------- Bees are flying insects closely related to wasps and ants, and are known for their role in pollination and for producing honey and beeswax.
  7. Führen Sie git add aus, um die Änderung per Stage an Ihr lokales Repository zu übertragen:

    git add bees.txt
  8. Führen Sie git commit aus, um die Änderung per Commit an Ihr lokales Repository zu übertragen:

    git commit -m "Added bees.txt"
  9. Um den Commit vom lokalen Repo in deine Remote-Repositorys zu übertragen, führe den Befehl where aus git push -u remote-name branch-name remote-name ist der Spitzname, den das lokale Repo für die Remote-Repositorys verwendet und branch-name ist der Name des Branches, der in das Repository übertragen werden soll.

    Tipp

    Sie müssen die Option -u nur für die erste Push-Ausführung verwenden. Dann werden die Upstream-Nachverfolgungsdaten festgelegt.

    Beispielsweise wird durch die Ausführung von git push -u origin main deutlich, dass der Push an beide Remote-Repositorys in den erwarteten Branches übertragen wurde. Die Ausgabe entspricht weitgehend der folgenden:

    FürHTTPS:

    Counting objects: 5, done. Delta compression using up to 4 threads. Compressing objects: 100% (3/3), done. Writing objects: 100% (3/3), 5.61 KiB | 0 bytes/s, done. Total 3 (delta 1), reused 0 (delta 0) To some-URL/MyDestinationRepo a5ba4ed..250f6c3 main -> main Counting objects: 5, done. Delta compression using up to 4 threads. Compressing objects: 100% (3/3), done. Writing objects: 100% (3/3), 5.61 KiB | 0 bytes/s, done. Total 3 (delta 1), reused 0 (delta 0) remote: To https://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo a5ba4ed..250f6c3 main -> main

    FürSSH:

    Counting objects: 5, done. Delta compression using up to 4 threads. Compressing objects: 100% (3/3), done. Writing objects: 100% (3/3), 5.61 KiB | 0 bytes/s, done. Total 3 (delta 1), reused 0 (delta 0) To some-URL/MyDestinationRepo a5ba4ed..250f6c3 main -> main Counting objects: 5, done. Delta compression using up to 4 threads. Compressing objects: 100% (3/3), done. Writing objects: 100% (3/3), 5.61 KiB | 0 bytes/s, done. Total 3 (delta 1), reused 0 (delta 0) remote: To ssh://git-codecommit.us-east-2.amazonaws.com/v1/repos/MyDemoRepo a5ba4ed..250f6c3 main -> main

Weitere Optionen findest du in deiner Git-Dokumentation.