How do I rollback a TFS check-in?我想回滚最近在TFS中所做的更改。 在Subversion中,这非常简单。 但是,这似乎在TFS中令人难以置信: 选项1:获取先前版本 选项2:获取TFS电动工具 选项3:手动撤消更改 题 如何回滚到TFS中的先前变更集? 该工具的最大缺点是,它需要在合并之前刷新工作空间中的所有内容。通过为回滚创建一个新的工作区来解决这个问题,该工作区直接映射到源树中受影响文件所在的位置。 如果您需要帮助确定哪些变更集可以回滚,我发现免费的Team Foundation Side Kicks加载项中的代码查看工具非常有用。
您的解决方案#1将起作用: 签出进行编辑 检入文件,并在出现提示时忽略服务器更改。
它对您失败的原因是因为您必须拥有 干杯 回滚已从tfpt.exe移至Team Foundation版本控制工具tf.exe。
在TFS 2010版本控制中,有两个选项可用于回滚(还原)变更集。第一种选择是使用用户界面(如果您安装了最新版本的TFS 2010 Power Tools)。
另一个选项是使用TFS 2010版本控制命令行应用程序:
我的博客文章中提供了有关这两种方法的信息,网址为:http://www.edsquared.com/2010/02/02/Rollback+Or+Undo+A+Changeset+In+TFS+2010+Version+Control.aspx 使选项1起作用的另一种方法是颠倒步骤的顺序: 即使您设置了"在结帐时获取最新信息"也可以使用。 作为参考,如果您使用的是TFS 2010,则这是"回滚命令"(Team Foundation版本控制)手册的链接。 要回滚特定的变更集,请转到Visual Studio命令提示符(2010),导航到TFS工作区目录,然后键入以下命令:
其中 啊,刚刚找到此CodePlex文章,内容涉及使用TFPT.exe(强大工具)回滚变更集。 希望这可以帮助你。 没有回滚选项实际上是TFS的功能;) 要回滚更改: 现在,您还可以保存回滚之前的所有中间变更集!多么伟大的功能! 使用TFS powertools是最好的方法http://rajputyh.blogspot.com/2008/08/change-set-rollback-using-tfs-power.html 我认为Team Foundation Power Tools是必经之路。如果有暂挂的更改,则可以将它们移到架子集,然后撤消或签入所有暂挂的更改,然后再运行rollback命令。有关更多信息,请参阅http://www.codeplex.com/VSTSGuidance/Wiki/View.aspx?title=How%20to%20undo%20a%20check-in&referringTitle=Source%20Control%20Practices%20at%20a%20Glance。 Ben Scheirman-"更改集详细信息"对话框不具有回滚功能。 如果您进行了1个签入,而您只想撤消它,则该签入具有一个变更集#。对相关文件夹进行历史记录,以查看错误的变更集。打开它可以查看详细信息(所有文件都已更改,等等)。 我相信您可以从该屏幕还原或撤消更改集,但是当我尝试执行此操作时,Visual Studio刚崩溃。 /叹气-我一定会分享你的痛苦。 我在哪里可以在此站点上下调TFS? 另一个选择是TFSPlus。此Visual Studio插件将(其中包括)"获取此版本"命令添加到历史记录窗口中。如果您已签出文件,它将用该版本替换。如果之后进行签入,则将有效地回滚到该版本。 但是,它适用于单个文件而不是完整的变更集。 获取特定版本 在"版本类型"下拉列表中,选择"类型"作为变更集 如果您知道此号码,请使用Changeset ...按钮查找您的Changeset或直接键入。 获得特定的变更集之后。 退房 报到 安装最新版本的TFS Power Tools(2011年8月),您可以右键单击更改集,然后选择"回滚整个更改集"。没有比这容易的多了。
在这里可用: 在上一页的"团队资源管理器增强"下得到了提示:
上面的解决方案适用于TFS2008。 TFS2010具有内置的回滚功能。有关详细信息,请参见本文。
这些解决方案都不适合我Dave Roberts解决方案与我实际使用的解决方案最接近。 我的解决方案是检出文件以进行编辑,获取特定版本,然后在检测到冲突时使用合并工具(并手动合并所有更改),以使文件保持原状。 我打算将其与特定版本进行比较,然后复制整个文件,然后将其粘贴到旧版本的顶部。 仍然应该有一个更简单的方法来做到这一点! |