Android

So löschen Sie einen lokalen und einen entfernten Git-Zweig

AWS Tutorial For Beginners | AWS Full Course - Learn AWS In 10 Hours | AWS Training | Edureka

AWS Tutorial For Beginners | AWS Full Course - Learn AWS In 10 Hours | AWS Training | Edureka

Inhaltsverzeichnis:

Anonim

Zweige sind Teil des alltäglichen Entwicklungsprozesses und eine der mächtigsten Funktionen in Git. Sobald eine Niederlassung fusioniert ist, dient sie keinem anderen Zweck als der historischen Forschung. Es ist gängige und empfohlene Praxis, den Zweig nach einer erfolgreichen Zusammenführung zu löschen.

In diesem Handbuch wird beschrieben, wie lokale und entfernte Git-Zweige gelöscht werden.

Löschen Sie einen lokalen Git-Zweig

Um einen lokalen Git-Zweig zu löschen, verwenden Sie den Befehl git branch mit der Option -d ( --delete ):

git branch -d branch_name

Deleted branch branch_name (was 17d9aa0).

error: The branch 'branch_name' is not fully merged. If you are sure you want to delete it, run 'git branch -D branch_name'.

Wie in der obigen Meldung angegeben, können Sie das Löschen erzwingen, indem Sie die Option -D , eine Abkürzung für --delete --force :

git branch -D branch_name

Bitte beachten Sie, dass Sie alle Änderungen in diesem Zweig verlieren, wenn Sie einen nicht zusammengeführten Zweig löschen.

Verwenden Sie den Befehl git branch --no-merged , um alle Zweige aufzulisten, die nicht zusammengeführte Änderungen enthalten.

Wenn Sie versuchen, den aktuellen Zweig zu entfernen, wird die folgende Meldung angezeigt:

error: Cannot delete branch 'branch_name' checked out at '/path/to/repository'

Sie können den Zweig, in dem Sie sich gerade befinden, nicht löschen. branch_name zuerst zu einem anderen Zweig und löschen branch_name dann den branch_name :

git checkout master git branch -d branch_name

Löschen Sie einen Remote-Git-Zweig

In Git sind lokale und entfernte Zweige separate Objekte. Durch das Löschen eines lokalen Zweigs wird der ferne Zweig nicht entfernt.

Um einen entfernten Zweig zu löschen, verwenden Sie den Befehl git push mit der Option -d ( --delete ):

git push remote_name --delete branch_name

Wobei remote_name normalerweise origin :

git push origin --delete branch_name

… - branch_name

Es gibt auch einen alternativen Befehl zum Löschen eines entfernten Zweigs, der zumindest für mich schwerer zu merken ist:

git push origin remote_name:branch_name

error: unable to push to unqualified destination: branch_name The destination refspec neither matches an existing ref on the remote nor begins with refs/, and we are unable to guess a prefix based on the source ref. error: failed to push some refs to '[email protected]:/my_repo'

In solchen Situationen müssen Sie Ihre Zweigstellenliste synchronisieren mit:

git fetch -p

Die Option -p weist Git an, alle Remote-Tracking-Referenzen, die nicht mehr im Remote-Repository vorhanden sind, vor dem Abrufen zu entfernen.

Fazit

In diesem Tutorial haben Sie gelernt, wie Sie lokale und entfernte Git-Zweige löschen. Zweige sind im Grunde genommen ein Verweis auf eine Momentaufnahme Ihrer Änderungen und haben einen kurzen Lebenszyklus. Sobald der Zweig mit dem Master (oder einem anderen Hauptzweig) zusammengeführt wurde, wird er nicht mehr benötigt und sollte entfernt werden.

Mit dem Befehl git branch können Sie auch lokale und ferne Git-Zweige umbenennen, erstellen und auflisten.