1

有没有办法告诉 TFS 一个或多个文件已被 Eclipse 中运行的另一个应用程序(在我们的例子中是 WebMethods 9)移动/重命名?我们必须使用 WebMethods 而不是TFS 移动/重命名文件,因为 WebMethods 会进行大量的自动引用更新。但是,我们还没有找到一种方法来告诉 TFS “嘿,相信我 - 我在 TFS 之外移动/重命名/删除了它”。相反,它拒绝将任何更改提交回存储库,直到旧文件重新出现。

我们目前正在通过使用旧名称创建虚拟文件然后通过 TFS再次删除它们来解决此问题,但您必须同意这有点糟糕。我很乐意将移动/重命名视为删除旧文件名并创建新文件名;我只是不想为此与 TFS 抗争。

Eclipse:3.6.1.M20100909-0800 TFS 插件:11.0.0.201306181529

4

1 回答 1

1

这取决于您使用的是服务器工作区还是本地工作区。

服务器工作区中,TFS 要求您通知服务器每次更改——签出文件、重命名、删除等。这允许 TFS 避免扫描您的磁盘以查找更改,这对于大型存储库是有益的。如果您想使用 Team Explorer Everywhere 强制进行磁盘扫描,因为您可能在 Eclipse 之外进行了一些更改,您可以转到 Actions 菜单并选择 Detect Local Changes。

本地工作区中,每当您查看待处理的更改状态时,TFS 都会检查您的磁盘是否有更改。因此,您所要做的就是tf status在 Pending Changes View 中运行或单击刷新,以查看对 Eclipse 之外的文件所做的更改。

如果您的工作流程涉及经常在 IDE 之外更改的文件,我强烈建议使用本地工作空间,但这需要 TEE 11.0 和 TFS 2012 或更高版本。

于 2013-11-01T13:10:11.697 回答