Machen Sie den Development-Branch mit dem Master-Branch identisch
Dieser Artikel behandelt das Zurücksetzen eines Zweigs Entwicklung
, sodass er mit dem Zweig master
identisch ist. Angenommen, Sie haben ein Git-Repository geklont und einen Entwicklungs
-Zweig vom master
-Zweig erstellt.
Nachdem Sie mit dem Code herumgespielt haben, stellen Sie fest, dass Ihr Zweig chaotisch ist und möchten ihn zurücksetzen, damit er mit dem master
-Zweig übereinstimmt. Wie gehen Sie vor?
Machen Sie den Development-Branch mit dem Master-Branch identisch
Wir können zwei Methoden anwenden, um einen Zweig Entwicklung
auf master
zurückzusetzen. Am einfachsten und saubersten ist es, den Zeiger neu zu erstellen.
Um den Zeiger für den Zweig Entwicklung
neu zu erstellen, wechseln Sie zum Zweig master
und führen Sie den folgenden Befehl aus.
$ git branch -f development master
Dadurch wird der Commit-Verlauf des Zweigs Entwicklung
zurückgesetzt, damit er mit dem Commit-Verlauf des Zweigs master
übereinstimmt.
Eine Alternative dazu ist der Befehl git reset
. Wechseln Sie zuerst in den Zweig Entwicklung
und führen Sie den folgenden Befehl aus.
$ git reset --hard master
Dieser Befehl hat die gleiche Wirkung wie der Befehl git branch -f
. Diese beiden Befehle beseitigen jedoch die Änderungen im Zweig Entwicklung
, die im Zweig master
nicht vorhanden sind.
Wenn Sie diese Änderungen nicht eliminieren möchten, können Sie stattdessen ein Commit erstellen, das den aktuellen Zustand Ihres master
-Zweigs widerspiegelt. Gehen Sie dazu folgendermaßen vor:
Wechseln Sie zunächst mit dem Befehl git checkout development
in den Zweig development
. Führen Sie den master
-Branch mit dem development
-Branch zusammen, ohne ein Commit zu erstellen, wie unten gezeigt.
$ git merge master --no-commit
Dieser Befehl führt Änderungen zusammen, stoppt jedoch die Zusammenführung vor dem Commit-Teil. Mit dem folgenden Befehl können Sie die Änderungen aus dem master
-Zweig aus dem Index auschecken.
$ git checkout --theirs master .
Vergessen Sie nicht, das .
am Ende des Befehls. Was übrig bleibt, ist das Festschreiben der Änderungen.
$ git commit -m"Resetting development to master"
Dadurch werden die Änderungen beibehalten, die nicht im master
-Zweig vorhanden sind, und den aktuellen Zustand des master
-Zweigs widerspiegeln.
Kurz gesagt, Sie können jeden Zweig auf master
zurücksetzen, indem Sie den Zeiger neu erstellen oder mit Hilfe des Befehls git reset --hard
. Beide Wege beseitigen die Änderungen, die im master
-Zweig nicht vorhanden sind.
Wenn Sie diese Änderungen beibehalten möchten, verwenden Sie die letzte Methode, die wir besprochen haben.
John is a Git and PowerShell geek. He uses his expertise in the version control system to help businesses manage their source code. According to him, Shell scripting is the number one choice for automating the management of systems.
LinkedIn