Visual studio AnkhSvn撤消/恢复提交

Visual studio AnkhSvn撤消/恢复提交,visual-studio,ankhsvn,Visual Studio,Ankhsvn,如何使用AnkhSvn/VS 2010撤销/恢复我承诺的更改。 (我很清楚您不能“删除”subversion存储库中的内容) 问题很简单,, 您正在头部工作(例如rev 100)。你发现有东西坏了。您查看历史,发现rev 93可能是问题所在。您希望恢复在rev 93中完成的更改,测试并提交这些恢复的更改 虽然我知道如何使用命令行“撤消”此操作,但如何在Visual Studio中使用AnkSvn执行此操作?转到历史记录查看器(右键单击解决方案->查看解决方案历史记录),在此处右键单击修订(或所选

如何使用AnkhSvn/VS 2010撤销/恢复我承诺的更改。 (我很清楚您不能“删除”subversion存储库中的内容)

问题很简单,, 您正在头部工作(例如rev 100)。你发现有东西坏了。您查看历史,发现rev 93可能是问题所在。您希望恢复在rev 93中完成的更改,测试并提交这些恢复的更改


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

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

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

合并向导将弹出

在第一页上选择“合并两棵不同的树”

在第二页上,您希望“From”是标题(最新版本),而“to”是要回滚到的特定修订版(OP案例中为93),并使用“From”URL

在第三页上,对于文本和二进制冲突,我选择了“为每个冲突提示我”。我将深度作为“工作副本”,并未选中“忽略祖先”和“允许未版本的障碍”

在最后的合并摘要页面上,首先执行一次试运行,检查更改是否正确。然后运行合并


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

AnkhSVN不工作。当我更新到特定版本时,我不断收到一条错误消息“请更新过期的项目,然后重试提交”。经过一些尝试和错误,我找到了如何使用命令“还原到此修订版”撤消提交的文件

例如,假设您的版本为4440,您希望将4435作为新的头部。使用
还原到此版本
放弃选定版本后的所有更改

如何使新的HEAD修订版具有先前承诺的版本 注意:您可能希望还原整个解决方案,但保留在“未完成”修订中所做的一些更改。如果在还原之前是这种情况,您可以:将较新的文件复制到临时位置,执行还原,然后将它们复制回以还原所有内容,但将一些更改保持在所需状态

下面是如何使用ANKH和Tortoise撤消/恢复已提交的更改

ANKH

在Visual Studio中打开解决方案后,
右键单击上下文菜单
(这可以是解决方案、项目或任何特定文件)>
查看历史记录
选择修订版
上下文菜单
还原到此修订版

ToirtoiseSVN


在文件资源管理器中,右键单击文件或文件夹(如果要执行大规模撤消操作,此文件夹甚至可能是顶部文件夹):
显示日志
要显示修订列表,请选择修订,然后选择上下文菜单→
恢复到此版本
。然后在
顶级文件夹级别执行提交
,所有项目都将恢复

Acjvsn对日常任务很方便,但我认为它太过局限和太过破坏,无法用于简单的更新/提交活动。如果有任何东西坏了,你应该提交一个关于它的bug报告,这样它就可以被修复。我更喜欢使用命令行。。。我之所以称它为“坏的”,并不是因为偶尔会出现错误,而是因为它自动假定“在解决方案中”和“在版本控制下”应该是一样的。谢谢。显然,只有在查看项目或解决方案的历史记录时,这才有效,而不是文件