Подтвердить что ты не робот

Выполняет ли поток Git удаление ветки на удаленном сервере?

Я использую git вместе с git flow. Здесь поток git имеет ветвь develop. Когда мне нужно запустить функцию, введите

git flow feature start new

создается новая ветвь feature/new. Затем я делаю изменения и commit, используя

git push origin feature/new

После внесения изменений закончить функцию, используя

git flow feature finish new

it удаляет feature/new ветвь локально. Теперь я переключился на развитие ветки на git flow, и я снова набираю

git push origin develop

которые вносят изменения в удаленный сервер develop branch

Если я наберу git branch -a, новая ветка удалилась из локальной, но она есть на сервере с именем remotes/origin/feature/new

Удаляет ли ветки git ветки удаления на удаленном сервере, которые удалены на моем локальном компьютере?

Скажите, пожалуйста, если я ошибаюсь.

4b9b3361

Ответ 1

Посмотрев источник, кажется, что удаленная ветвь удалена, только если вы вызываете git flow feature finish с -F.

Тем не менее, этот выбор удаляется до завершения функции. Из docs:

-F извлекать из $ORIGIN перед выполнением финиша

В противном случае вы можете удалить удаленную ветку вручную:

git push origin :feature/new

Ответ 2

Могу ли я предложить использовать git -flow AVH Edition.

Как сказал Стефан, исходная версия удаляет удаленную ветку только при использовании -F, что довольно странно. AVH Edition исправляет это причудливое поведение, оно всегда удаляет локальную и удаленную ветку функций на финише, если вы не укажете либо

  • --keep, который сохраняет локальный и удаленный.
  • --keeplocal, который сохраняет локальный, но удаляет пульт.
  • --keepremote, который сохраняет удаленный доступ, но удаляет локальные.

Вы можете найти git -flow AVH Edition на github.

Ответ 3

Что я должен был сделать:

git flow feature delete -f name_feature

Значение -f необходимо, если внутри ветки функции есть изменения.

git push origin --delete feature/name_feature

То есть для удаления удаленной ветки.