466 Stimmen

Was mit dem Zweig nach der Zusammenführung geschehen soll

Ich hatte zwei Zweige: master et branch1 . Ich habe gerade verschmolzen branch1 zurück in master und ich bin fertig mit diesem Zweig. Sollte ich ihn löschen oder ihn einfach liegen lassen? Führt das Löschen zu einem Verlust von Daten?

542voto

Jonas Schäfer Punkte 18971

Nach der Zusammenführung können Sie den Zweig sicher löschen:

git branch -d branch1

Außerdem warnt git Sie (und weigert sich, den Zweig zu löschen), wenn es denkt, dass Sie ihn noch nicht vollständig zusammengeführt haben. Wenn Sie einen Zweig zwangsweise löschen (mit git branch -D ), die noch nicht vollständig zusammengeführt ist, müssen Sie einige Tricks anwenden, um die nicht zusammengeführten Commits zurückzubekommen (siehe unten).

Es gibt jedoch einige Gründe, einen Zweig in der Nähe zu behalten. Wenn es sich zum Beispiel um einen Funktionszweig handelt, möchten Sie vielleicht in der Lage sein, Fehlerkorrekturen an dieser Funktion noch in diesem Zweig durchzuführen.

Wenn Sie die Verzweigung auch auf einem entfernten Rechner löschen möchten, können Sie dies tun:

git push origin :branch1

Oder das Äquivalent dazu:

git push -d origin branch1

Dadurch wird der Zweig auf der Gegenstelle zwangsweise gelöscht (dies wirkt sich jedoch nicht auf bereits ausgecheckte Repositories aus und hindert niemanden mit Push-Zugriff daran, den Zweig erneut zu pushen/erstellen).


git reflog zeigt die zuletzt ausgecheckten Revisionen an. Jeder Zweig, den Sie in der jüngsten Repository-Historie ausgecheckt haben, wird dort ebenfalls angezeigt. Davon abgesehen, git fsck ist das Mittel der Wahl, wenn es in Git zu einem Commit-Verlust kommt.

30voto

Yohst Punkte 1416

Ich bevorzuge RENAME statt DELETE

Alle meine Zweige sind in der Form von

  • Fix/fix-<somedescription> o
  • Ftr/ftr-<somedescription> o
  • usw.

Wenn ich Tower als Git-Frontend verwende, organisiert es ordentlich alle Ftr/ , Fix/ , Test/ usw. in Ordnern.
Sobald ich mit einem Zweig fertig bin, kann ich umbenennen sie zu Done/...-<description> .

Auf diese Weise sind sie immer noch vorhanden (was praktisch sein kann, um eine Historie zu erstellen), und ich kann immer zurückgehen, wenn ich weiß, was es war (Funktion, Korrektur, Test usw.).

7voto

ahmednabil88 Punkte 14906

Wenn Sie den Zweig löschen, nachdem Sie ihn zusammengeführt haben, müssen Sie beachten, dass alle Hyperlinks, URLs und Verweise des gelöschten Zweigs BROKEN .

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X