Ich hatte zwei Zweige: master
und branch1
. Ich habe mich gerade branch1
wieder zusammengeschlossen master
und bin mit diesem Zweig fertig. Soll ich es löschen oder einfach herumstehen lassen? Wird das Löschen zu Datenverlust führen?
Ich hatte zwei Zweige: master
und branch1
. Ich habe mich gerade branch1
wieder zusammengeschlossen master
und bin mit diesem Zweig fertig. Soll ich es löschen oder einfach herumstehen lassen? Wird das Löschen zu Datenverlust führen?
Antworten:
Nach dem Zusammenführen ist es sicher, den Zweig zu löschen:
git branch -d branch1
Außerdem warnt git Sie (und lehnt es ab, den Zweig zu löschen), wenn es denkt, dass Sie ihn noch nicht vollständig zusammengeführt haben. Wenn Sie einen Zweig (mit git branch -D
), der noch nicht vollständig zusammengeführt wurde, zwangsweise löschen , müssen Sie einige Tricks ausführen, um die nicht zusammengeführten Commits zurückzugewinnen (siehe unten).
Es gibt jedoch einige Gründe, einen Zweig zu behalten. Wenn es sich beispielsweise um einen Feature-Zweig handelt, möchten Sie möglicherweise Bugfixes für dieses Feature durchführen können, das sich noch in diesem Zweig befindet.
Wenn Sie den Zweig auch auf einem Remote-Host löschen möchten, haben Sie folgende Möglichkeiten:
git push origin :branch1
Dadurch wird der Zweig auf der Fernbedienung zwangsweise gelöscht (dies wirkt sich jedoch nicht auf bereits ausgecheckte Repositorys aus und hindert niemanden mit Push-Zugriff daran, ihn erneut zu pushen / zu erstellen).
git reflog
zeigt die kürzlich ausgecheckten Revisionen. Dort wird auch jeder Zweig angezeigt, den Sie im letzten Repository-Verlauf ausgecheckt haben. Abgesehen davon git fsck
wird es das Werkzeug der Wahl in jedem Fall von Commit-Loss in Git sein.
git checkout master && git merge branch1 && git push origin branch1 && git branch -d branch1
Ich bevorzuge RENAME anstatt DELETE
Alle meine Zweige sind in Form von benannt
Fix/fix-<somedescription>
oder Ftr/ftr-<somedescription>
oder Mit Turm als meine git Frontend organisiert sie fein säuberlich alle die Ftr/
, Fix/
, Test/
usw. in Ordnern.
Sobald ich mit einem Zweig fertig bin, benenne ich sie in um Done/...-<description>
.
Auf diese Weise sind sie immer noch da (was nützlich sein kann, um den Verlauf bereitzustellen) und ich kann jederzeit zurückgehen und wissen, was es war (Feature, Fix, Test usw.).
Wenn Sie fortfahren und den Zweig nach dem Zusammenführen LÖSCHEN.
Kümmere dich einfach
um
Alle Hyperlinks URLs Referenzen deiner DELETED Filialen, werden GEBROCHEN .