svn:恢复到以前的版本

时间:2010-09-27 20:38:11

标签: svn

我错误地将错误的更改提交到文件,为简单示例,我们称之为foo.txt:

foo.txt,rev 300(正确):

 E = mc^2

foo.txt,rev 301(不正确):

 E = mc^3

如何将rev 300重新提交到下一次提交?如果我将foo.txt更新为rev 300,我会得到正确的文件,但其状态是正确的&不需要承诺。

注意:我只想恢复foo.txt。 rev 301中的其他修订很重要,我需要保留它们。

3 个答案:

答案 0 :(得分:15)

svn merge -r301:300 foo.txt
svn commit -m 'revert foo.txt to 300'

答案 1 :(得分:9)

如果你正在使用TortoiseSVN,这非常容易。只需查看该文件的日志,右键单击修订版300并选择还原到此修订版(这是本地操作)。然后,您可以将本地文件提交为302。

或者,如果这种情况很久以前发生,您可以选择从此修订版中恢复更改。这将仅恢复该签入时发生的更改(您将在301上执行此操作)。

答案 2 :(得分:2)

svn merge -c-301 .
svn commit -m "Reverting commit 301"