Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/tfs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么我的TFS工作区路径一直在重新映射自身?_Tfs_Workspace - Fatal编程技术网

为什么我的TFS工作区路径一直在重新映射自身?

为什么我的TFS工作区路径一直在重新映射自身?,tfs,workspace,Tfs,Workspace,我们正在使用VisualStudio2008/TFS2008 我们有一个小的开发团队,出于某种原因,当我们中的任何人“获得最新信息”时,我们的一条路径会定期地重新映射到另一条路径。这会导致“获取最新信息”开始删除文件,因为路径已更改。每次都是同一条路径被重新映射到错误的路径 工作区定义存储在哪里 我们查到TFS中有什么东西导致了这一点吗 工作区定义存储在服务器上 如果您转到命令行并键入“tf workspace”,您将看到您的工作区的定义。这不是正常的行为-听起来有点滑稽。只是想检查一下-您所做

我们正在使用VisualStudio2008/TFS2008

我们有一个小的开发团队,出于某种原因,当我们中的任何人“获得最新信息”时,我们的一条路径会定期地重新映射到另一条路径。这会导致“获取最新信息”开始删除文件,因为路径已更改。每次都是同一条路径被重新映射到错误的路径

  • 工作区定义存储在哪里
  • 我们查到TFS中有什么东西导致了这一点吗

  • 工作区定义存储在服务器上


    如果您转到命令行并键入“tf workspace”,您将看到您的工作区的定义。

    这不是正常的行为-听起来有点滑稽。只是想检查一下-您所做的一切都是从源代码管理资源管理器简单获取的,对吗?还有,你们都在不同的机器上?(即,您不共享虚拟PC映像或多台计算机具有相同名称的任何内容)


    我想检查的一个方法是转到文件、源代码管理、管理工作区,查看get前后的工作文件夹映射,看看是否有任何变化。它不应该这样做-如果它这样做了,这可能会给我们一个关于正在发生什么的线索。

    您也可以尝试清除您的工作区缓存并重新映射它:

    SET AppDataTF=%USERPROFILE%\Local Settings\Application Data\Microsoft\Team Foundation SET AppDataVS=%APPDATA%\Microsoft\VisualStudio IF EXIST "%AppDataTF%\1.0\Cache" rd /s /q "%AppDataTF%\1.0\Cache" > NUL IF EXIST "%AppDataTF%\2.0\Cache" rd /s /q "%AppDataTF%\2.0\Cache" > NUL IF EXIST "%AppDataVS%\8.0\Team Explorer" rd /s /q "%AppDataVS%\8.0\Team Explorer" > NUL IF EXIST "%AppDataVS%\9.0\Team Explorer" rd /s /q "%AppDataVS%\9.0\Team Explorer" > NUL 设置AppDATATF= %UrSrrices %\本地设置\ApvestDATa\\微软\Team基金会 设置AppDataVS=%APPDATA%\Microsoft\VisualStudio 如果存在“%AppDataTF%\1.0\Cache”rd/s/q“%AppDataTF%\1.0\Cache”>NUL 如果存在“%AppDataTF%\2.0\Cache”rd/s/q“%AppDataTF%\2.0\Cache”>NUL 如果存在“%AppDataVS%\8.0\Team Explorer”rd/s/q“%AppDataVS%\8.0\Team Explorer”>NUL 如果存在“%AppDataVS%\9.0\Team Explorer”rd/s/q“%AppDataVS%\9.0\Team Explorer”>NUL
    我在打开解决方案时遇到过这种情况。如果解决方案包含不在其文件夹下的其他项目的相对路径,这些项目在您的工作区中以不同的方式映射,GET将告诉我它正在重新映射以解释它。问题是它所做的决定是完全错误的

    唯一的解决方法是确保所有开发人员使用sourcec control使用的相同结构,以及每个工作区中表示的havev

    但是到达那里很痛苦。基本上,每个人都必须删除所有文件的所有本地副本,重做工作区,选择“否”以在工作区更改时“获取”,关闭VS,打开,获取最新版本

    原因是如果本地存在项目副本,即使这些项目没有打开,GET仍然是错误的。这是令人沮丧的,因为当检查这些项目与最新版本的差异时,没有更改,但是当打开包含该项目的解决方案时,该项目中的dll引用将自动更改。此时,任何文件上都没有挂起的更改。但在构建之后,这些更改将持续并导致下一个get再次关闭


    我肯定这一切都错了,但这就是我们这周发生的事情。

    好的,我明白了。这是解决办法

    首先安装VisualStudio2008SP1(我想您已经安装了VS2008和团队资源管理器)

    现在启动VisualStudio2008,转到源代码管理并删除工作区。 创建一个新的工作区,并将源代码管理文件夹映射到本地文件夹。 单击“确定”当它询问“工作区已修改”,您希望获取最新信息”时,选择“否”。

    现在关闭Visual Studio 2008

    重新打开Visual Studio 2008并转到源代码管理,然后获取特定内容(选中两个复选框以覆盖文件)。

    如果您有基于asp.net web的解决方案,现在是创建应用程序池、在IIS中配置网站、设置正确的身份验证和授权的时候了。否则它是可选的

    现在转到源代码管理中的相应文件夹并双击解决方案文件。您也可以通过双击本地文件夹中的解决方案文件来打开解决方案,但我发现从源代码管理打开解决方案更容易

    执行上述步骤时,如果您的网站已配置,Visual Studio 2008将自动检测您已设置的网站,并提示您确认。单击“确定”

    它将联系源代码管理服务器,查看是否需要同步。如果您的解决方案中有多个项目,您将看到文件获取进度条在屏幕上快速闪烁,您的解决方案将在几分钟内完成设置


    真正的问题在于Visual Studio 2008 Service Pack 1。没有它,TFS映射就会损坏。如果安装了SP1并遵循上述指南,则不会有问题。

    是的,我可以修改我的工作空间。但是,当我在get操作后查看我的工作区时,路径发生了更改。当映射开始在一个工作站上运行时,这对我来说是有效的,而在另一个工作站上运行良好。我遇到了完全相同的问题。但仅在某些机器上,而在某些机器上并非如此。我们为所有用户提供了一致的解决方案结构。我们遵循了您的步骤,但VS 2008仍然自行创建了一个新的映射,并将所有文件混合在一起。我很震惊,我只能找到一个解决这个问题的结果。作为记录,我仍然在VisualStudio2010SP1中看到这个问题。我有一个根映射修改了本地目标文件夹,当我从TFS now获得时,大多数文件夹都是正确的(根据新的根映射),但有些仍然使用旧的映射。我直接检查了映射,只有一个(根映射)。问题项目已经打开,我怀疑csproj和/或sln文件中的路径指示VS中的TFS支持映射到错误的位置。还尝试删除TFS“缓存”文件夹[AppData\Local\Microsoft\Team Foundation]谢谢!你是我的救世主,这个