AnkhSvn撤消/恢复提交

时间:2011-01-18 11:55:27

标签: visual-studio ankhsvn

如何使用AnkhSvn / VS 2010撤消/恢复我提交的更改。 (我很清楚你不能“删除”subversion存储库中的东西)。

问题很简单, 你正在研究HEAD(例如rev 100)。你发现有什么东西坏了。您查看历史记录,并确定rev 93可能是问题。您希望还原在rev 93中完成的更改,测试并提交这些还原的更改。

虽然我知道如何使用命令行“撤消”这个,但是如何在Visual Studio中使用AnkSvn执行此操作?

3 个答案:

答案 0 :(得分:8)

转到历史记录查看器(右键单击解决方案 - >查看解决方案历史记录),在此处右键单击修订版本(或修订版本选项),然后使用上下文菜单中的项目撤消更改。 / p>

答案 1 :(得分:0)

我使用以下过程:
如果解决方案在主干HEAD上工作且没有本地文件,请右键单击解决方案,转到Subversion - >合并

将弹出合并向导。

在第一页上选择'合并两个不同的树'

在第二页上,您需要'来自'成为HEAD(最新版本)和' To'作为回滚的具体修订版(在OP案例中为93)并使用' From' URL。

在第三页上,对于文字和二进制冲突,我已经提示我每个'选择。我有深度作为工作副本'离开'忽略祖先'和“允许无法阻挡的障碍物”#39;选中。

在最终的“合并摘要”页面上,首先执行干运行,检查更改是否正确。然后运行合并。

最后,将更改提交到主干。

答案 2 :(得分:0)

我完成 Update to a Specific Version 时AnkhSVN无法正常工作,我不断收到一条错误消息,内容为“ 请更新过期的项目,然后重试提交 ”。经过反复试验,我弄清楚了如何使用命令 Revert to this revision 撤消已提交的文件。

例如,您的修订版为4440,而您想将4435设为新头。使用 Revert to this revision 放弃选定修订后的所有更改。

如何使先前提交的版本成为新的HEAD版本

注意:您可能希望还原整个解决方案,但保留“未完成”修订中的一些更改。如果是这种情况,则可以执行以下操作:将较新的文件复制到一个临时位置,进行还原,然后再将它们复制回以还原所有内容,但将一些更改保持在所需的状态。

以下是如何undo/revert a committed change同时使用ANKH和Tortoise。

ANKH

在Visual Studio中打开解决方案后, Right click context menu (可以是解决方案,项目或任何特定文件)> View History> Select revision> { {1}}> context menu

ToirtoiseSVN

在文件浏览器Revert to this Revision中(如果要进行批量撤消,甚至可能是顶部文件夹): right click on the file or folder 以显示修订列表,选择一个版本,然后选择Show Log Context Menu 。然后在Revert to this revision,所有项目都将还原。