我找到了各种关于如何恢复SVN提交的示例,例如

svn merge -r [current_version]:[previous_version] [repository_url]

or

svn merge -c -[R] .

但这两种方法似乎都不管用。我尝试了这些命令,并检查了手动更改的文件。

如何恢复修订号为1944的提交?我如何检查恢复已经完成(没有在实际文件中查看已恢复的更改)?


当前回答

下面将做一个演练,正如它所说。HEAD是当前版本,PREV是之前的版本,然后是文件或提交项的路径:

svn merge --dry-run -rHEAD:PREV https://example.com/svn/myproject/trunk

如果试运行看起来不错,那么运行命令时不要使用——dry-run

验证修订中的更改并重新提交。要浏览版本号,请尝试:

svn log

其他回答

Alex,试试这个:svn merge [WorkingFolderPath] -r 1944:1943

下面将做一个演练,正如它所说。HEAD是当前版本,PREV是之前的版本,然后是文件或提交项的路径:

svn merge --dry-run -rHEAD:PREV https://example.com/svn/myproject/trunk

如果试运行看起来不错,那么运行命令时不要使用——dry-run

验证修订中的更改并重新提交。要浏览版本号,请尝试:

svn log

两个例子都必须成立,但是

svn merge -r UPREV:LOWREV。撤销范围

svn merge -c -REV。撤消单个修订,在您的情况下REV将是1944,即您希望撤消的修订。

在这个语法中,如果当前目录是WC并且(在每次合并后必须完成)你将提交结果

您想查看日志吗?

如果您使用的是TortoiseSVN客户端,则可以通过显示日志对话框轻松完成。

“取消提交”修订是不可能的,但是您可以将工作副本恢复到1943版本,并将其提交为1945版本。1943年和1945年的版本将是相同的,有效地恢复了变化。