首页 > 解决方案 > 了解 Visual Studio 中的 git 分支

问题描述

我只通过 Visual Studio 熟悉 Git 进行源代码控制。

我们使用 Azure DevOps 进行源代码控制,并从那里通过右键单击现有分支并选择新建分支来创建功能分支。

我进行开发、测试等,并将其合并到父分支中。然后我从 DevOps 中删除分支。

在 Visual Studio(VS 的 github 扩展)中,在分支下,我仍然可以看到所有以前删除的分支。在“remotes/origin”下——对我来说这听起来像是远程分支,意思是 DevOps,我删除的那些仍然列出来。右键单击它们中的任何一个都会提供“从远程删除分支” - 但同样,它远程不存在。

这是预期的行为吗?我想保持我的 dev/VS 环境干净,并且看到很多旧分支与此背道而驰。

标签: gitazure-devops

解决方案


是的,这是预期的行为。您应该考虑分支的 3 个阶段。您创建的本地分支,origin 是您拥有的服务器的最后一张图片,然后是实际的服务器分支。一旦您从服务器获取最新数据,您的原始分支将被更新,但是它不会删除不再在服务器上的分支,除非您获取修剪。

您可以使用以下命令行解决此问题 git fetch --prune

或进入 Visual Studio 中的 Visual Studio git 设置 在此处输入图像描述

选择全局设置

在此处输入图像描述

并将 prune 设置为 true

然后通过进入分支菜单并右键单击原始分支来获取,或者进入同步并在那里获取。


推荐阅读