【问题标题】:Deleted a file out side Visual Studio, TFS doesn't recognize it在 Visual Studio 之外删除了一个文件,TFS 无法识别它
【发布时间】:2011-10-30 23:25:31
【问题描述】:

我是 TFS 的新手。我使用 Visual Studio 从 TFS 中检查了一个文件夹,然后使用 Windows 资源管理器在该文件夹中删除了一堆文件/添加了几个文件(实际上我没有这样做,但该文件夹有第三方库,我使用了一个安装程序所有这些变化)。

现在,如果我转到 Visual Studio 并尝试签入该文件夹,我会收到以下错误:

签入:未执行操作

找不到文件:/ThirdPartyFolder/aDeletedFile.aspx

我尝试按照这篇文章中提出的解决方案进行操作,但没有成功: http://www.woodwardweb.com/tfs_top_tip/tfs_top_tip_11.html

当我执行“获取特定版本”并指定“更改集 1”时,它不会像在该博客文章的屏幕截图中那样以红色显示已删除的文件。此外,当我单击确定时,它会显示 Pending Changes-Conflicts 窗口,其中包含所有已删除的文件。即使我选择了“保留本地版本”,但当我尝试签入时,我又遇到了同样的错误。

TFS 中是否有办法获取我的本地版本中的内容并用我的本地版本文件覆盖服务器中的内容?

我使用 Subversion 做过类似的操作,这从来都不是问题。希望有人能告诉我如何在 TFS 中实现这一点。

【问题讨论】:

    标签: tfs


    【解决方案1】:

    Team Foundation Server 要求您显式挂起对这些文件的更改 - 如果您在本地删除文件,这不会显式挂起对 Team Foundation Server 的删除。这实际上是一个有用的特性——服务器根据它对本地文件系统的了解来优化它发送给你的数据。也就是说,如果您说“获取最新”,它知道您当前的版本并且只会交付更改。如果您正在处理非常大的项目,这可能非常有效。

    但是,当其他程序决定在不对服务器进行更改的情况下进行更改时,事情可能会有些混乱。幸运的是,TFS 能够检测外部所做的更改,而无需显式挂起这些更改。您可以使用 TFS 客户端的“返回在线”功能。

    您需要安装Team Foundation Server Power Tools,然后您可以简单地运行:tfpt online 来检测这些更改并选择要挂起到服务器的更改。

    【讨论】:

    • 下一个 TFS 版本 (v11) 对此进行了更改:blogs.msdn.com/b/bharry/archive/2011/08/02/…
    • 谢谢爱德华!我现在正在安装 TFS Power 工具,希望能解决这个问题。很快就会回复我的经历。
    • @Lars,这是一个非常有用的链接。很高兴知道这些变化即将到来
    • 我从文件系统中删除了文件,但我遇到了同样的错误。我安装了电动工具并在线运行了tfpt,但它不起作用......还有其他选择吗?如果我能说服我的公司转向分布式 vcs……那么全世界都会很高兴。
    • 您在根文件夹中运行了tfpt online /deletes? (tfpt online 默认不扫描删除,它需要命令行参数。)
    【解决方案2】:

    (VS2012) 从 TFS“签入”列表中选择丢失的文件,然后右键单击它们并单击“撤消更改”以将它们永远从“签入”列表中排除。

    【讨论】:

      【解决方案3】:

      这是 svn 和 tfs 的主要区别之一。 Svn 在某种程度上与 windows shell 集成得更紧密,工作文件夹中的每一次更改都会在提交时影响服务器。我建议您在 tfs UI 中而不是从 shell 中执行任何 movedeleterename 操作。

      【讨论】:

      • 它实际上并没有更加集成 - svn 在每次提交之前都会扫描您的本地文件系统。您可以通过使用类似地扫描文件系统的在线命令来模拟 TFS 的相同行为。
      • 但是 TFS 仍然不像 TortoiseSVN 那样在 Windows 资源管理器中右键单击上下文菜单,对吧?或者它是否存在于某个地方?我会认为这将与 VS 安装一起提供。那是我一直在逃避的,我相信 hsalimi 所说的。 TortoiseSVN UI 也更倾向于向您展示非版本化文件或已删除文件,并将成功提交它可以提交的内容。所以在我看来,从工作流和 UI 的角度来看,TFS 仍有一些成熟的工作要做。
      猜你喜欢
      • 1970-01-01
      • 2019-04-20
      • 2017-04-06
      • 1970-01-01
      • 2014-08-30
      • 1970-01-01
      • 2012-06-22
      • 2013-12-08
      • 1970-01-01
      相关资源
      最近更新 更多