HOWTO · Git

Git-Zweig umbasieren

Dieses Tutorial behandelt die verschiedenen Schritte, die Sie unternehmen können, um Ihren lokalen Zweig mit den Befehlen git fetch, git rebase und git push auf einen Remote-Master-Branch umzubasen.

Dieses Tutorial behandelt die verschiedenen Schritte, die Sie unternehmen können, um Ihren lokalen Zweig mit den Befehlen git fetch, git rebase und git push auf einen Remote-Master-Branch umzubasen.

Lokale Verzweigung auf eine Remote-Master-Verzweigung in Git umbasen

  1. Änderungen abrufen

    Wir verwenden den Befehl git fetch, um alle Änderungen aus unserem Remote-Repository abzurufen.

    pc@JOHN MINGW64 ~/Git (Branch1)
    $ git fetch
    remote: Enumerating objects: 3, done.
    remote: Counting objects: 100% (3/3), done.
    remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
    Unpacking objects: 100% (3/3), 610 bytes | 3.00 KiB/s, done.
    From https://github.com/Wachira11ke/Delftscopetech
     * [new branch]      main       -> origin/main
    
  2. Änderungen vornehmen

    Wir führen den Befehl git rebase aus, um Änderungen in unseren Zweig zu integrieren. Das folgende Beispiel wird unseren aktuellen Zweig vom Hauptzweig umbasieren.

    pc@JOHN MINGW64 ~/Git (main)
    $ git rebase main
    Current branch main is up to date.
    

    Verwenden Sie bei Konflikten das git add . Befehl, sie zu lösen. Führen Sie den Befehl git commit nicht nach git add . aus. Befehl.

    Verwenden Sie nach dem Lösen der Konflikte git rebase --continue, um den Vorgang abzuschließen. Wenn Sie den Prozess nach dem Lösen der Konflikte abbrechen möchten, verwenden Sie den Befehl git rebase --abort.

  1. Pushen Sie Änderungen an das Remote-Repository

    Um den Inhalt in Ihr lokales Repository hochzuladen, verwenden Sie den Befehl git push -f wie unten dargestellt.

    git push main HEAD -f
    

    Das -f überschreibt alle Änderungen, die von anderen Entwicklern im Remote-Repository vorgenommen wurden.

    Nachfolgend finden Sie eine sicherere Methode, um Änderungen an ein Remote-Repository zu übertragen.

    git push --force-with-lease main HEAD
    

    Dieser Befehl überschreibt nicht die Änderungen, die von anderen Entwicklern im Remote-Repository vorgenommen wurden.

    Umbasieren und Zusammenführen werden verwendet, um Änderungen von einem Zweig in einen anderen zu integrieren. Beim Rebasing wird ein Feature-Branch aktualisiert, ohne den Branch-Verlauf zu stören, was einen saubereren Commit-Verlauf ermöglicht.

    Es ist das Gegenteil von git merge, das widersprüchliche Branches erzeugen kann, wenn es mit anderen geteilt wird.