如何在使用Git时在Visual Studio中刷新分支(本地/远程)?

概要

我正在学习如何在Visual Studio中使用Git。 我最近做了一个pull请求,其中function分支在合并后被删除。 function分支仍然显示在我的本地和远程分支在Visual Studio中。 我知道如何右键单击并删除分支,这是一种解决方法,因为团队中的其他人可能会在我没有知道的分支上完成请求。 如果他们之后删除分支,我不知道他们这样做了。

如何刷新Git上的Visual Studio分支?

我期望的

我期望一个button,链接或右键点击function,点击检查差异,如果发现任何问题,“这个分支不再存在,你想从Visual Studio中删除它?”。

技术规格

我正在使用Visual Studio 2015 Enterprise

附加示例

这可能是另一个问题,但在这里很合适。 我只注意到,如果我创build了一个分支(比如在一个虚拟机中查看与另一个虚拟机相同的回购),Visual Studio没有用于更新分支列表的git fetch选项。 顶部的刷新button似乎没有做任何事情。 只要我在bash中运行git fetch ,visual studio就有了新的分支。 我希望刷新照顾这个。

如果分支在服务器端被删除,请尝试在命令行(因为这样的“button”似乎不直接存在于Visual Studio中):

 git remote prune origin --dry-run 

(删除--dry-run选项来实际删除本地分支)

删除相应的本地分支以及git branch -d aBranch

然后 重新启动您的Visual Studio ,并检查它拿起更新的分支名单。 (评论提到你不必重新启动/刷新VS)

注意:我之前在2013年提到过这个configuration

 git config remote.origin.prune true 

这将自动执行该过程,并且似乎由Visual Studio支持 ,如下面 yaniv所述 。

根据这个博客文章 ,你可以通过设置一个git属性

 git config remote.origin.prune true 

这会在您执行提取操作时从您的列表中删除已删除的分支。

From: https : //intovsts.net/2017/01/17/refresh-git-remote-branches-in-visual-studio/

您可以configurationgit使用以下命令在执行提取/拉运行时自动执行此操作:

 git config remote.origin.prune true –global 

您应该首先取消发布分支 ,然后其他人会注意到分支未发布(通过尝试拉分支他们将得到一个错误),删除本地分支实际上是一个单独的过程本身,必须完成以摆脱无论如何,分支。