【问题标题】:"No appropriate mapping exists" error while unshelving shelveset in TFS在 TFS 中取消搁置搁置集时出现“不存在适当的映射”错误
【发布时间】:2014-06-09 11:42:18
【问题描述】:

我使用的是 TFS 2012。在 TFS 中有超过 15 个用户。当我尝试取消搁置搁置文件时,它显示错误,如下所示

有趣的是,这个错误不会出现在少数用户身上,而且他们能够取消搁置它。所有用户都有相同的权限。该错误来自一个用户,而另一个用户却没有出现在同一台 PC 上(安装了 TFS 服务器的 PC)。所以这是一个奇怪的错误。最初我想可能是映射的问题,但对于另一个用户,相同类型的映射允许取消搁置它。我也尝试重新创建用户,但它并没有解决问题。那么为什么会出现这个错误呢?

【问题讨论】:

    标签: visual-studio tfs


    【解决方案1】:

    您需要在团队资源管理器中选择您的工作区,而不是在源代码管理资源管理器中。

    为避免这种情况,请尝试为您创建跨不同工作区的相同路径的映射。

    正确的方法:

    错误的方式:

    【讨论】:

    • Vote++,但就我而言,红鲱鱼是 Source Control Explorer
    【解决方案2】:

    检查您在 Team Explorer > Pending Changes 中选择的工作区。您必须选择一个工作区,该工作区的映射包含您尝试取消搁置的文件的服务器路径。

    (注意:确保您使用的是团队资源管理器中的工作区映射,而不是源代码管理资源管理器中显示的工作区。)

    因此,如果搁置集上的文件是:$/TFS/Main/File1.cs,您需要选择一个工作区,其中包含该文件或其父文件夹之一的映射(例如$/TFS/Main

    我有多个不同分支的工作区,当我选择“功能分支”工作区时尝试取消搁置到“主”工作区时,通常会看到此错误。

    【讨论】:

    • 我已经为包含该文件的文件夹创建了一个新的工作区,然后尝试取消搁置(即我已经为包含在搁置集中的文件的文件夹创建了工作区)。但是错误来了。对于相同的映射,它在另一个用户中工作。
    • 你选择了工作区吗,我现在添加一张图片。
    • 嘿,我没有观察到团队资源管理器中存在的工作区名称。我在源代码管理资源管理器中查看工作区名称。每次我打开需要取消搁置的工作区时。现在我知道了我到底是怎么出错的,以及如何通过选择工作区来取消搁置搁置集。
    • VS2012 - 团队资源管理器 - 待更改:“签入”按钮右侧是工作区。在取消搁置之前选择工作区。
    • 哇,您在 Pending Changes 中选择的工作区与在 Source Control Explorer 下选择的工作区不同,这有多晦涩难懂?谢谢
    【解决方案3】:

    当您的搁置集包含未映射到本地工作区的文件或文件夹时,会发生此错误。请强制获取搁置集中包含的所有路径的最新信息。之后取消搁置即可。

    【讨论】:

    • 在我的情况下,我在 $/coding_files/Testing_coding 中有 frmmain.frm,并且我为 $/coding_files/Testing_coding 创建了工作区。然后创建搁置集。为相同创建了新工作区,但在取消搁置时出现错误。
    • 如何进行“强制获取”?
    猜你喜欢
    • 2018-01-08
    • 1970-01-01
    • 1970-01-01
    • 2017-01-09
    • 2023-03-31
    • 1970-01-01
    • 1970-01-01
    • 2016-02-26
    • 2012-10-16
    相关资源
    最近更新 更多