Co zrobić z gałęzią po połączeniu

Miałem dwie gałęzie: master i branch1. Właśnie połączyłem branch1 z powrotem do master i skończyłem z tą gałęzią. Mam to usunąć, czy po prostu zostawić? Czy usunięcie go spowoduje utratę danych?

Author: Karol Selak, 2012-12-22

2 answers

Po połączeniu można bezpiecznie usunąć gałąź:

git branch -d branch1

Dodatkowo, git ostrzeże cię (i odmówi usunięcia gałęzi) jeśli uzna, że nie połączyłeś jej jeszcze w pełni. Jeśli na siłę usuniesz gałąź (z git branch -D), która nie jest jeszcze całkowicie scalona, musisz wykonać kilka trików, aby odzyskać niezergowane commity (patrz poniżej).

Jest jednak kilka powodów, dla których warto trzymać gałąź. Na przykład, jeśli jest to gałąź funkcji, możesz chcieć to zrobić feature wciąż w tej gałęzi.

Jeśli chcesz również usunąć gałąź na zdalnym hoście, możesz to zrobić:

git push origin :branch1

Spowoduje to wymazanie gałęzi na pilocie (nie wpłynie to jednak na repozycje pobranych plików i nie uniemożliwi osobom z dostępem push ponownego ich utworzenia).


git reflog pokazuje ostatnio sprawdzone wersje. Każda gałąź, którą ostatnio zarejestrowałeś w historii repozytorium, również się tam pojawi. Poza tym, git fsck będzie być wybranym narzędziem w każdym przypadku utraty commit-loss w git.

 288
Author: Jonas Schäfer,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-12-22 19:38:59

Wszystkie moje gałęzie są nazwane w formie Fix/fix-<somedescription> LUB Ftr/ftr-<somedescription> itp. Używając Tower jako mojego Git front end, porządnie organizuje wszystkie Ftr/, Fix/, Test/ itd. do folderów. Kiedy skończę z gałęzią, zmienię ich nazwę na Done/...-<description> W ten sposób, że nadal tam są (co może być przydatne, aby podać historię) i zawsze mogę wrócić wiedząc, co to było (feature, fix, test itp.)

 22
Author: Yohst,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-03-21 21:29:39