TFS 2008项目文件上的状态不正确

时间:2009-10-01 11:54:55

标签: visual-studio visual-studio-2008 tfs tfs2008 source-control-explorer

我有一个存储在TFS源代码管理(2008)中的项目正由2位开发人员处理。所有3个版本(Developer1,Developer2和Server)都是最新的。但是,两位开发人员都报告解决方案资源管理器中的某些文件说“由其他人或其他地方签出” - 但在源代码管理资源管理器中查看的相同文件表明它们可用。好像工作区已经混淆了,但实际的文件是“好的”。

有人可以帮忙吗?

6 个答案:

答案 0 :(得分:2)

我之前已经让这些列表不同步了。需要的是“强制获取最新状态”来刷新状态。为此,选择“获取特定版本”,然后选择“最新”和“获取文件,即使它们已在本地存在”(或某些选项)。这将强制文件刷新,即使它们已经是最新的,也应该更正它们的状态。

你会认为VS / TFS足够聪明,可以自己调和,但有时它们不会,无论出于何种原因。

答案 1 :(得分:1)

转到Visual Studio中的File-> Source Control->工作区。确保您的开发人员只有1个工作区。很可能有人在他的机器上创建了多个工作区并在那里检查了文件。

TFS将工作区映射到创建它们的计算机上的位置,因此,如果有人将代码下拉到多个位置并对其进行编辑,则可以让一个人在多个位置检出代码。

此外,this link会向您展示如何查看为特定人员检出的所有文件。

但我也同意Preet。在TFS中由多个人检出文件是完全可以的。这是SourceSafe的一个小改进。

答案 2 :(得分:1)

如果我签出文件,然后执行“撤消挂起的更改”,它将恢复正常。我认为这是这个错误,它似乎没有修复任何补丁或未来的版本。

http://social.msdn.microsoft.com/Forums/en-SG/tfsversioncontrol/thread/2a1c6a8c-0a2b-460c-9335-e31598f1107b

答案 3 :(得分:0)

您是否安装了SP1?这为我们的团队修复了它。如果没有,请检查您的任何开发人员是否有单独的工作区,并且可能已将文件签出到其中

答案 4 :(得分:0)

当我们从TFS 2005升级到TFS 2008时,我们遇到了这个问题。升级存在问题,迫使我们创建新的虚拟机并恢复/升级2005数据库。我们在工作组身份验证和重新创建本地用户帐户,但由于他们都有新的SID,他们在某些方面被认为是不同的帐户。所有原始用户的工作空间都在附近。

查看用于操作工作空间的命令行tf和tfpt工具,看看你是否有孤儿。 Attrice Team Foundation Sidekicks也有一个很好的GUI工作区经理。

答案 5 :(得分:-1)

一个更大的问题。你为什么关心其他人是否有文件签出? TFS支持对文件进行多个并行检出。如果你想要独占控制,那就使用锁。

很抱歉更清楚 - 我经常发现解决方案资源管理器中的状态不值得关注。如果我需要一个文件,我会检查出来。如果有人锁定它,那么我当时就会被TFS告知,否则我只是使用该文件。