svn提交对旧版本进行的更改

时间:2012-05-01 14:19:37

标签: svn

这应该很简单,但不知何故我无法弄清楚:

我更新到倒数第二个版本,让我们说修订版100(HEAD是101),如下所示:svn up -r 100。然后我做了各种更改,现在我希望修改后的文件作为修订版102进行检查(如果需要,我可以回到101)。我怎么做?如果我只是做svn commit,我会收到“过时”错误。我不能svn up来修复过时的问题,因为我不希望HEAD(101)中的任何更改回来......

2 个答案:

答案 0 :(得分:3)

将更改的文件保存到临时文件夹。重命名本地存储库以进行备份。创建新的本地存储库。粘贴代码更改回复制到临时文件夹的文件。提交。

您可能希望在提交之前执行KDiff确认所有更改都是正确的。

希望这有助于解决这个问题。

答案 1 :(得分:2)

要撤消先前提交的更改,您应该使用svn merge,而不是svn up

而不是svn up -r100,请查看HEAD修订版并执行svn merge -c -101 .

这导致本地文件中的内容相同,但现在subversion将不再尝试在允许您提交之前重新应用修订版101的更改。

另见the svn manual on undoing changes