5

我有一个项目存储在TFS源代码控制(2008),正在由2名开发人员工作。所有3个版本(Developer1,Developer2和Server)都是最新的。但是,两位开发人员都报告说,解决方案资源管理器中的某些文件会说'已被别人或其他地方检出' - 但在源代码管理资源管理器中查看的相同文件表示它们可用。看起来好像工作区已经变得混乱,但实际的文件是'好的'。TFS 2008项目文件不正确的状态

任何人都可以帮忙吗?

+1

有其中内搁置集未决的变化进行计数,朝向解决方案管理器使用该测量中的错误。它应该在2008 SP1中修复。 – 2009-12-21 20:02:13

回答

1

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

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

+0

我观察到相同的行为。没有工作空间,没有货架,没有分支,没有其他用户 - 只有在“结账”和“撤消挂起的更改”之后错误的tfs状态消失。 – 2011-12-14 16:40:29

-1

更大的问题。为什么你在乎别人是否有一个文件签出? TFS支持多个文件并行签出。如果你想独占控制,然后使用锁。

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

+2

我同意它以任何方式阻止我们的工作。它只是播下了所有可能不太好的疑问种子,稍后会出现更大的问题(例如丢失代码)。 – 2009-10-01 13:39:32

0

您是否已安装SP1?这为我们的团队解决了问题。如果没有,检查是否有您的开发者有独立的工作空间和可能在Visual Studio中的文件签出它

+0

所有的开发者确实都安装了SP1。 – 2009-10-05 10:05:51

+0

啊,现在我还记得那是什么东西(在我的小卧室里向我的同事询问他是否回忆了我所呻吟的问题)。我有一个搁置的架子。检查你是否有相同的,如果不需要删除或删除它 – 2009-10-05 13:46:40

1

转到文件 - >源代码控制 - >工作区。确保你的开发人员只有1个工作区。很可能有人在他的机器上创建了多个工作区,并在那里检出文件。

TFS映射工作区来创建它们的,所以如果有人推倒代码多个地方和编辑它在机器上的位置,你可以有一个人的代码在多个地方检查。

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

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

+0

小改进!我会说这是最好的一个! – 2009-10-01 13:44:37

+0

是的,我脸上有一点舌头。 :-) – 2009-10-01 22:06:20

2

我以前有过这些列表不同步。需要的是“强制获得最新”来刷新状态。要做到这一点,你选择“获取特定版本”,然后选择“最新”和“获取文件,即使它们已经存在于本地”(或类似的选项)。这将强制文件刷新,即使它们已经是最新的,也应该更正它们的状态。

你会觉得VS/TFS将足够聪明调和这对自己,但有时他们只是不这样做,无论出于何种原因。

+0

是的,已经尝试过了。没有区别我害怕。 – 2009-10-02 06:12:29

0

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

查看命令行tf和tfpt工具来处理工作区,看看你是否有孤儿。 Attrice Team Foundation Sidekicks也有一个不错的GUI工作区管理器。