Unshelve 抛出 "No appropriate mapping exists" 错误,然后在我重试时起作用

Unshelve throws "No appropriate mapping exists" error then works when I try again

我在从团队资源管理器 > 搁置集详细信息中取消搁置时,大多数时候都会遇到上述错误,但与 this question 不同的是,我在待定更改 window 下正确设置了工作区。奇怪的是,我总是能够在第二次尝试后不改变任何东西

它并不总是对我如此,它似乎不会影响我团队中的任何其他人。我也没有搞乱任何我认为相关的设置。

是的,我已经重新启动了计算机。

它做的另一件事是在通过门控签入构建后协调时删除所有 ADD 更改。

谢谢。

使用 VS 2015 Update 3(版本 14.0.25431.01)连接到 TFS 2015(版本 14.102.25423.0)

根据您的描述:“它似乎不会影响我团队中的任何其他人”。问题应该是客户端问题。

首先,您可以使用另一个 TFS 帐户取消搁置开发计算机上的 Shelvesets。如果问题与您的帐户无关,这将缩小范围。

建议您尝试clear TFS and VS cache:

对于 TFS 缓存:

  • 关闭客户端计算机上 Visual Studio 的所有实例,

  • 手动删除对应的Tfs客户端缓存文件夹,然后

  • 开始Visual Studio

    手动删除对应的Tfs文件夹如下:

        Tfs 2015: "%localappdata%\Microsoft\Team Foundation.0\Cache\"
    

对于VS缓存:

删除以下文件夹中的内容

C:\Users\<<Your Alias>>\AppData\Local\Microsoft\VisualStudio
C:\Users\<<Your Alias>>\AppData\Local\Microsoft\VSCommon

如果上述方法无效,您也可以删除旧工作区(先备份本地更改),然后创建一个新工作区。然后再测试一下,应该可以了。

事实证明,在将我的工作区从未决更改更改为之前打开搁架集会导致问题。解决方案是在 打开书架集之前 更改待处理更改中的工作区。

我肯定会称这是 VS 中的错误,因为搁置集查看器在取消搁置之前不会指示它引用的工作区。