我错误地将错误的更改提交到文件,为简单示例,我们称之为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中的其他修订很重要,我需要保留它们。
答案 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"