SVN - 完全删除SVN服务器的修订版

srn*_*nka 10 svn repository

遗憾的是,我向SVN提交了一个大文件夹(它有大约1.4GB和大约10000个文件,其中很多都是二进制文件).是否有可能回到以前的版本并让SVN服务器忘记下一次修订已完成?例如,此提交是修订版120.因此,我想制作顶级修订版119并删除120. revision的所有文件和SVN数据库设置.

我已经尝试删除该文件夹,因此完成了121提交.然后我尝试合并修订版121和119.但它没有帮助.修订版120仍在系统中.

然后我想使用svnsync制作SVN存储库的镜像,但是没有选项来设置我希望镜像的版本.除非我没有找到这个选项.(我想将修订版从0设置为119).

你知道我该怎么办吗?有没有完全删除一个修订版的命令,因为它从未发生过?

Wil*_*ara 14

您必须转储存储库,然后重新加载它,跳过您不再需要的修订版.(在你的例子中是r120)

为此,请使用svnadmin dump命令,然后使用svnadmin load命令.

例:

svnadmin dump c:\svn\my_repo -r0:119 > repo.dump
svnadmin load c:\svn\my_new_repo < repo.dump
Run Code Online (Sandbox Code Playgroud)

在更复杂的场景中,您可能必须使用svndumpfilter,但我不认为在您的情况下这是必要的.