Visual Studio Git远程列表仍显示已删除的分支。

6

有没有某个按钮可以让Visual Studio理解已经删除的远程分支?

场景如下:我在Azure DevOps git分支中进行了推送,然后在多台不同的电脑上进行操作。最终,在将其合并到主分支后,我使用Visual Studio界面中的下拉窗口从本地及远程删除了它。

为确保远程删除成功,我转到存储库的Azure Web界面进行检查。分支已明确消失;我的删除已完成。

但是,当我转到曾经对该分支进行过操作的另一台机器并查看我的远程分支列表时,已删除的分支仍然显示出来。即使我进行了提取(fetch)并再次查看,它仍然存在。即使删除了本地副本,情况也是如此。看起来Visual Studio没有接收到该远程分支已被删除的信息。

因此,为了清理第二个计算机上的远程分支列表,我必须再次在远程上将其删除。或者我可以创建一个干净的存储库,这样就会消失。

是否还有其他按钮/菜单命令可以解决这个问题?


2
不知道如何在VS中正确执行此操作,但在基础的Git中,只需运行git fetch --prunegit remote prune origin,或将fetch.prune设置为true即可。 - torek
1个回答

14
即使我删除了本地副本,似乎Visual Studio并没有意识到远程分支已经被删除。
需要澄清的是,你所讨论的不是VS,而是Git。Git有意地在获取(fetch)时不会丢失远程分支提示,你想要执行的操作称为“prune”。
要从VS访问修剪功能,请使用此设置: enter image description here

谢谢。我知道一定是这样的。在问一个愚蠢的问题之前,我感到很傻,因为我没有在Visual Studio中浏览所有GIT配置选项... - Joe
没关系,我也没有。实际上,我打出来的是你不能从VS中做到这一点(因为它不在IDE上可见的任何按钮上),当我准备告诉你如何在命令行上完成时,我决定查看设置页面以确保lol。我从未在生活中使用过修剪,更多的分支名称也不会困扰我,也不会节省空间(提交仍然存在,您需要一个gc来摆脱这些)。 - Blindy
@Joe 不要感到愚蠢 - 我做的第一件事就是去 Stack Overflow 看看有没有人解决了这个问题。 - Morvael

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接