在git存储库中,删除了我未跟踪的远程分支。当我输入
git branch -r
已删除的分支仍然显示(我可以查看)
我必须运行什么git命令才能更新此信息?
答案 0 :(得分:276)
如果 远程存储库 中的分支已被删除,并且您希望立即更新所有本地远程跟踪分支,则可以使用
$ git remote prune <remotename>
删除给定远程的所有过时远程跟踪分支(即跟踪在远程存储库中删除的分支的分支)。
请参阅git remote
文档。
答案 1 :(得分:177)
git remote update --prune
应刷新所有遥控器的分支,添加新的分支并删除已删除的分支。
编辑:
remote update命令基本上获取远程分支列表。
--prune
选项将删除本地远程跟踪分支,这些分支指向远程上不再存在的分支。
答案 2 :(得分:38)
如果您执行类似
的操作git branch -d -r remote_name/branch_name
您只能删除本地结帐。此命令对远程存储库没有任何作用,这就是它仍然显示的原因。
<强>解决方案:强>
git push origin :branch_name
将删除远程分支(注意':')和
git branch -d branch_name
将删除您当地的结帐。
答案 3 :(得分:13)
对于查看新的远程分支也很有用:
git fetch --all
答案 4 :(得分:2)
您可以组合-r
和-d
标志来删除远程分支。
答案 5 :(得分:2)
尝试此命令
git gc --prune=now