【问题标题】:How can I refresh the list of remote branches in my Visual Studio 2017 Team Explorer panel?如何刷新 Visual Studio 2017 Team Explorer 面板中的远程分支列表?
【发布时间】:2017-12-24 18:21:41
【问题描述】:

如何在我的 Visual Studio Team Explorer 面板中刷新远程分支列表?

在 Visual Studio 2017 Team Explorer 的“分支”面板中,我可以在 VSTS 实例中看到大约 10 个分支。

然后在 Chrome 中,我删除了一些旧分支并创建了一个新分支。

切换回 VS 2017,但remotes/origin 分支列表仍然显示旧列表,我无论如何都找不到刷新它。

我尝试更改为不同的存储库,F5 刷新团队资源管理器标题,我什至关闭并重新打开 VS 2017...但没有刷新列表以匹配 VSTS 门户显示

【问题讨论】:

    标签: azure-devops visual-studio-2017 team-explorer


    【解决方案1】:

    你可以使用 git 命令:git fetch -p

    【讨论】:

    【解决方案2】:

    如果您使用新的“新 Git 用户体验”(通过工具启用 -> 选项 -> 环境 -> 预览功能 -> 选中“新 Git 用户体验”)。

    然后到达上述TerraElise 答案所引用的相同位置的步骤将转到顶部菜单窗格上的“Git”选项 -> 设置到相同位置以设置“提取时修剪”选项。

    【讨论】:

      【解决方案3】:

      我使用 Visual Studio 2015,但找不到其他答案中提到的大多数设置选项。这是对我真正有用的东西:

      转到团队资源管理器选项卡-->单击“主页”按钮--> 同步-->单击“ 同步”链接

      这是让 Visual Studio 同步存储库和本地版本之间的分支。

      【讨论】:

        【解决方案4】:

        remotes -> origin 中找到远程分支,然后双击该分支以在本地选择它。现在您可以获取/同步/等。

        【讨论】:

        • 甜蜜的行动杰克逊成功了!谢谢,你是我的英雄。
        【解决方案5】:

        如果您希望 Visual Studio 2017 始终在获取时进行修剪(我愿意,我会为 UI 工作添加和删除很多分支),一旦您安装了第 3 方 Git(可以从团队资源管理器中的 Git 部分的设置中执行)将是全局设置(也在 Git 部分)中的一个新选项,用于“在获取期间修剪远程分支”,您可以将其设置为 True。在将我的 VS 更新到 15.5 之前我没有这个选项(我在 15.0 上)。

        【讨论】:

        • 仅供参考。如果您的设置不包括团队项目节点(仅 Git),那么您没有连接到项目 - 连接管理器 > 连接到项目...
        • VS 2019:工具 > 选项 > 源代码管理 > Git 全局设置
        【解决方案6】:

        您可以在 Visual Studio Team Explorer 中获取。

        查看 => 团队资源管理器

        【讨论】:

        • 我发现工作的唯一方法是使用命令行回答... git fetch --prune --verbose
        • 同意,@TerraElise 的回答表明您必须启用修剪才能使其正常工作。
        【解决方案7】:

        在您的本地 repo 目录中,您应该使用git fetch -p(或git fetch --prune)命令。然后你会发现远程删除的分支不会显示在VS分支面板的remotes/origin中。

        这是因为git fetch 不会从远程仓库检查跟踪引用是否存在。但是对于git fetch -p,它会检查跟踪引用是否存在,并在获取之前删除不存在的引用。

        【讨论】:

          【解决方案8】:

          您必须先获取。 Visual Studio 所做的只是与您的本地存储库进行交互。如果你不从远程获取分支,它就不会知道它们的存在。

          【讨论】:

          • 我不认为这实际上回答了我的问题......在 Visual Studio 2017 的团队资源管理器的分支面板中,我可以在我们的 VSTS 实例中看到大约 10 个分支。然后在 Chrome 中,我删除了一些旧分支并创建了一个新分支。切换回VS,但是remote/origin分支列表还是显示旧列表。
          • 我发现工作的唯一方法是使用命令行回答... git fetch --prune --verbose
          • 这个答案对我有帮助。执行同步后,分支列表被刷新。谢谢丹尼尔
          猜你喜欢
          • 2015-11-13
          • 2016-02-17
          • 2018-05-01
          • 2020-02-04
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2018-03-22
          • 2016-07-21
          相关资源
          最近更新 更多