到目前为止,还原一个或多个版本更改的最简单方法是使用版本日志对话框。
选择您需要还原更改的文件或文件夹。如果您要还原所有更改,则应选择顶层文件夹。
选择
→ 以显示版本列表。您可能需要使用 或 来显示您感兴趣的版本。选择您想要还原的版本。如果您想要撤销一个版本范围,请选择第一个版本并按住 Shift 键的同时选择最后一个版本。如果您想要挑选出单个版本和范围,请在选择版本时按住 Ctrl 键。右键单击 选定的版本,然后选择 → 。
或者,如果您想将较早的版本作为新的 HEAD 版本,右键单击 选定的版本,然后选择 → 。这将丢弃选定版本之后所有的更改。
您已在工作副本中还原了更改。检查结果,然后提交更改。
如果您想以列表形式输入版本号,可以使用合并对话框。前一种方法在幕后使用合并;此方法显式使用它。
在您的工作副本中,选择
→ 。在 合并类型 对话框中,选择 合并版本范围。
在 从: 字段中,输入您的工作副本文件夹的完整版本库 URL。这应该会作为默认 URL 出现。
在 要合并的版本范围 字段中,输入要回滚的版本列表(或使用日志对话框选择它们,如上所述)。
确保选中 反向合并 复选框。
在 合并选项 对话框中,接受默认设置。
单击
以完成合并。您已在工作副本中还原了更改。检查结果是否符合预期,然后提交更改。
由于 TortoiseSVN 永远不会丢失数据,因此您 “回滚” 的版本仍然作为版本库中的中间版本存在。只有 HEAD 版本被更改为之前的状态。如果您想让版本从您的版本库中完全消失,抹去它们曾经存在的所有痕迹,您必须采取更极端的措施。除非有非常好的理由这样做,否则不建议这样做。一个可能的原因是有人将机密文档提交到了公共版本库。
从版本库中删除数据的唯一方法是使用 Subversion 命令行工具 svnadmin
。您可以在 版本库维护 中找到有关其工作原理的描述。