用SVN代替“git reset --hard”

时间:2011-08-11 14:02:19

标签: svn

我想将我的SVN 中央存储库,而不是工作副本,从版本M还原到版本N(M> N),就像git reset --hard

我该怎么做?

2 个答案:

答案 0 :(得分:42)

你走了。

svn revert --recursive .

答案 1 :(得分:11)

修改

另一个答案(https://stackoverflow.com/a/24500425/520162)似乎比我提出的解决方案更好。检查一下!


在客户端上,很简单:

svn checkout -r <revision> url://path/to/repo

应该这样做。

如果你在服务器上(就像你编辑的问题所说的那样),那取决于你想要实现的目标。


如果您想在N之后丢弃所有修订版,请执行

svnadmin dump -r1:N yourrepo > repo.dump

然后,删除旧的仓库并创建一个新的仓库

svnadmin create newrepo
svnadmin load newrepo < repo.dump

如果您想保留您的仓库,请在客户端上查看N并提交到服务器,以便N是最新状态。


第三个:从N开始设置一个分支并处理该分支。