Commit in einen anderen Zweig in Git verschieben

Abdul Jabbar 30 Januar 2023
  1. Berechnen, wie viele Commits in Git verschoben werden müssen
  2. Verschieben von Commits in einen neuen Branch in Git
  3. Verschieben Sie Commits in einen vorhandenen Branch in Git
Commit in einen anderen Zweig in Git verschieben

Git ist ein sehr nützliches und mächtiges Werkzeug in der modernen Softwarewelt. Viele Arten von Dateien und Codes können über Branching und Commit in Git gespeichert werden. Verzweigung ist ein Konzept, das je nach verwendetem Versionskontrollsystem unterschiedlich ist. Viele Entwickler gehen davon aus, dass es aufgrund seiner Effizienz das am meisten bevorzugte Versionskontrollsystem ist.

Meistens sind wir mit dieser Situation konfrontiert, wenn wir nach Abschluss einiger Arbeiten und dem Festschreiben an einen bestimmten Zweig feststellen, dass wir fälschlicherweise an den falschen Zweig festgeschrieben haben und dies erneut auf einem anderen Zweig festschreiben möchten. Hier kommt Git zu unserer Rettung und ermöglicht es uns, unsere Commits in andere bestehende Branches oder in den neuen Branch zu verschieben.

Dieser Leitfaden gibt uns ein grundlegendes Verständnis dafür, wie wir unsere Commits in einen anderen Branch verschieben können, es kann ein neuer oder bestehender Branch sein. Darüber hinaus werden wir besprechen, wie man mit dem Befehl git branch einen neuen Branch erstellt, einen Commit mit dem Befehl git reset verschiebt und diese Änderungen mit dem Befehl git merge wieder in den Haupt-Branch zusammenführt.

Berechnen, wie viele Commits in Git verschoben werden müssen

Bevor wir mit dem gesamten Prozess beginnen, müssen wir die Situation beurteilen. Nehmen wir an, wir haben den Zweig ausgecheckt, den wir ändern werden; wir müssen die Geschichte zu diesem Zweck sehen.

Wir werden den folgenden Befehl verwenden, um zu berechnen, wie viele Commits verschoben werden müssen.

git log

Nach der Ausführung können wir sehen, dass HEAD zwei Commits am Kopf von origin/HEAD sind, und dies sind die beiden gewünschten Commits, die wir in einen anderen Zweig verschieben müssen. Unten sind die verbleibenden Schritte, in denen wir behandeln, wie diese Commits in einen neuen Zweig oder einen bestehenden Zweig verschoben werden.

Verschieben von Commits in einen neuen Branch in Git

Die unten aufgeführten Schritte zeigen uns, wie wir unsere neuesten Commits in einen neuen Zweig verschieben.

  • Einen neuen Zweig erstellen
    git branch feature/new branch
    

    Dieser Befehl erstellt einen neuen Zweig, der alle Commits des master(current)-Zweigs enthält.

  • Verschiebt den aktuellen Zweig um zwei Commits zurück
    git reset --keep HEAD~2
    
  • Schauen Sie sich den neuen Zweig an
    git checkout feature/new branch
    

Durch die Ausführung dieser wurden unsere beiden letzten Commits aus master (aktueller Zweig) entfernt und in einem neuen Zweig namens feature/new branch hinzugefügt.

Verschieben Sie Commits in einen vorhandenen Branch in Git

Die unten aufgeführten Schritte zeigen uns, wie wir unsere neuesten Commits in einen bestehenden Zweig verschieben. Es wird für uns nützlich sein, wenn wir aus einem Feature-Zweig herausgearbeitet haben, aber versehentlich begonnen haben, Commits im falschen Zweig vorzunehmen. Nehmen wir an, der aktuelle Branch mit den Commits, die wir entfernen wollen, ist master.

  • Auschecken der bestehenden Filiale
    git checkout feature/existing branch
    

    Der Befehl git checkout beschränkt sich nicht nur auf das Arbeiten mit dem Arbeitsverzeichnis. Es kann auch verwendet werden, um den Referenzzeiger HEAD zu einem Referenzpunkt auf einer Verzweigung zu bewegen.

  • Masterbranch zusammenführen
    git merge master
    

    Der Befehl git merge kann auch verwendet werden, um Zweige mit dem aktuellen Zweig zusammenzuführen, aber nur, wenn der aktuelle Zweig bereits mit den zusammenzuführenden Zweigen zusammengeführt wurde.

  • Überprüfen den master-Zweig
    git checkout master
    

    Der Befehl checkout master zieht die neueste Version des Codes herunter und erstellt einen neuen Zweig namens master.

  • Verschiebe den aktuellen Zweig um zwei Commits zurück:
    git reset --keep HEAD~2
    

    Die Option --keep setzt Indexeinträge zurück und aktualisiert Dateien im Arbeitsbaum, die sich zwischen Commit und HEAD unterscheiden. Wenn die Datei zwischen Commit unterschiedlich ist und HEAD lokale Änderungen aufweist, wird Reset beendet. Somit wurden die letzten beiden Commits aus dem master entfernt und einem bestehenden Branch hinzugefügt.

Abdul Jabbar avatar Abdul Jabbar avatar

Abdul is a software engineer with an architect background and a passion for full-stack web development with eight years of professional experience in analysis, design, development, implementation, performance tuning, and implementation of business applications.

LinkedIn

Verwandter Artikel - Git Commit

Verwandter Artikel - Git Branch