В репозитории git удаленная ветка, которую я не отслеживаю, была удалена. Когда я печатаю
git branch -r
удаленная ветка все еще отображается (и я могу это проверить)
Какую команду git мне нужно запустить, чтобы обновить эту информацию?
В репозитории git удаленная ветка, которую я не отслеживаю, была удалена. Когда я печатаю
git branch -r
удаленная ветка все еще отображается (и я могу это проверить)
Какую команду git мне нужно запустить, чтобы обновить эту информацию?
Ответы:
Если вы выполните что-то вроде
git branch -d -r remote_name/branch_name
вы удаляете только местную кассу. Эта команда ничего не делает с удаленным репозиторием, поэтому она все еще отображается.
Решение:
git push origin :branch_name
удалит удаленную ветку (обратите внимание на ':') и
git branch -d branch_name
удалит вашу местную кассу.
( Ссылка )
git push <remote> --delete <branchname>для удаления удаленных веток.
Если это были ветки в удаленном репозитории, которые были удалены, и вы хотите обновить все локальные ветки удаленного отслеживания сразу, вы можете использовать
$ git remote prune <remotename>
для удаления всех устаревших ветвей удаленного отслеживания для данного удаленного устройства (т.е. тех, которые следуют за ветвями, которые были удалены в удаленном репозитории).
См. git remoteДокументацию.
git fetch?
git gcпросто упаковывает объекты и ссылки и удаляет объекты, на которые нет ссылок (с некоторым запасом прочности).
git remote update --prune
Следует обновить ветки всех пультов, добавляя новые и удаляя удаленные.
Изменить: команда удаленного обновления в основном извлекает список веток на пульте дистанционного управления. Эта --pruneопция избавит вас от ваших локальных веток удаленного отслеживания, которые указывают на ветки, которые больше не существуют на пульте дистанционного управления .
Также полезно для просмотра новых удаленных веток:
git fetch --all
Вы можете комбинировать -rи -dфлаги для удаления удаленных филиалов.
Попробуйте эту команду
git gc --prune=now