【问题标题】:Get Specific version of a deleted file in TFS在 TFS 中获取已删除文件的特​​定版本
【发布时间】:2012-03-29 01:18:09
【问题描述】:

我似乎无法解决 TFS 的这个非常奇怪的问题。

大约一年前,我创建了一个名为“extensions.cs”的文件并将其置于源代码管理中,假设变更集 1000 左右。在变更集 5000 处,文件被删除(因为不再需要它)并且生活继续,当然没问题。

现在我需要从变更集 3000 左右构建一个较旧的程序。碰巧使用了“extensions.cs”,但我无法在变更集 3000(或任何与此相关的变更集)检查该文件,即使它那个时候应该已经存在了。我可以在源代码管理资源管理器中看到该文件,但它是灰色的,并且它的“最新”状态被列为“已删除”

我无法将其取回似乎很愚蠢,所以我做错了什么,我该如何解决这个问题?

【问题讨论】:

  • 你能在变更集 3000 上获取 父文件夹 吗?还是 1000,就此而言?
  • 是的,我可以,但是可以这么说,任何标记为“已删除”的内容都不会从管道中删除。
  • 这个功能应该像你描述的那样工作。屏幕截图可以吗?该项目的历史记录(查看它被删除的变更集)?
  • 是的,我同意应该这样做,但事实并非如此。这就是我们所说的 TFS,所以也就不足为奇了。
  • 应该,我的意思是它对我有用。我想知道您正在采取的具体步骤。

标签: c# visual-studio-2010 tfs


【解决方案1】:

使用tf undelete

或通过用户界面:

Tools > Options > Source Control > Visual Studio Team Founation Server:检查Show deleted items in the Source Control Explorer。然后选择一个或多个文件和Undelete

【讨论】:

  • 不得不手动挑选每个受影响的文件似乎是在浪费时间。有没有什么方法可以让 TFS 表现得合理。
  • 是的,然后我必须切换到我想要的变更集,并为每个变更集“解决冲突”。这真的是 TFS 想要做的事情吗?
  • 如果文件被删除,为什么会有冲突?
  • 因为根据 TFS,“取消删除”算作“修改”。是的,我同意,这完全是荒谬的。我只是要把它放在我的 TFS 不能做的事情清单上。
  • 但是被删除的文件不应该存在于您的本地工作空间中。如果您保留了它的副本,您自己就会产生冲突。通过将本地副本移动到不受版本控制的文件夹来避免这种情况。
猜你喜欢
  • 2016-01-01
  • 2014-01-05
  • 1970-01-01
  • 2017-01-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-12-08
相关资源
最近更新 更多