Моя ситуация в этом ... кто-то, работающий на том же репо, удалил ветку из своего местного & удаленных репо ...В чем разница между git remote prune, git prune, git fetch --prune и т. Д.
Большинство людей, которые спрашивают о такого рода проблемы на переполнение стека, или другие сайты имеют выпуск отраслей все еще показывает в их удаленного отслеживания списка филиала git branch -a
в нижней части:
* master
develop
feature_blah
remotes/origin/master
remotes/origin/develop
remotes/origin/feature_blah
remotes/origin/random_branch_I_want_deleted
Однако в МОЕЙ ситуации филиал, который не должен быть там, является локальным:
* master
develop
feature_blah
random_branch_I_want_deleted
remotes/origin/master
remotes/origin/develop
remotes/origin/feature_blah
Когда я делаю одно из следующих действий, не удаляются локально:
$ git prune
Я также попытался:
$ git remote prune origin
$ git fetch --prune
Более полезная информация: Когда я проверяю git remote show origin
это как это выглядит следующим образом:
* remote origin
Fetch URL: utilities:homeconnections_ui.git
Push URL: utilities:homeconnections_ui.git
HEAD branch: master
Remote branches:
master tracked
develop tracked
feature_blah tracked
other123 tracked
other444 tracked
other999 tracked
Local branches configured for 'git pull':
develop merges with remote develop
feature_blah merges with remote other999
master merges with remote master
random_branch_I_want_deleted merges with remote random_branch_I_want_deleted
Local refs configured for 'git push':
develop pushes to develop (local out of date)
master pushes to master (up to date)
feature_blah pushes to feature_blah(up to date)
Обратите внимание, что только в разделе под названием Local branches configured for 'git pull':
Почему?
'мерзавец ветвь -d the_local_branch' – krsteeve
Спасибо, но я просто любопытно, почему это могло произойти. – gogogadgetinternet
Существовала тонкая разница при работе с иерархией ветвей ('x/y'): она была исправлена (см. [Мой ответ ниже] (http://stackoverflow.com/a/21072934/6309)) – VonC