SVN仓库版本回退

SVN仓库版本回退,第1张

当我们使用SVN增理备份和恢复时,如果不小心使用svnadmin load错了版本时,需要先装load错的版本删了再重新滚悉灶load正确的版本。查询过svnadmin 的命令,貌似没有发现删除或回退指定版本相关的命令,但是我们可以直接删改文件来实现这个功能。

我们要load的dump文件有

由于 *** 作失败,我们load test.0-10.dump后直接load了test.16-25.dump

这时候在load完 test.16-25.dump时会有如下提示

此时查看svn show log会发现原来的16-25的版本号改为了11-20,直接跳过了11-15的版本号。如果再load 11-15的话就会装版本号的顺序弄反,导致仓库数据出错。

此时我们大扮需要先删除仓库中的11-20版本,再重新依次load test.11-15.dump 和 test.16-25.dump

回滚完成了,这时候可以重陆拆新load正确的版本了。

这种 *** 作也可以删除svn仓库中的指定版本,彻底的毁尸灭迹,不在svn版本库中留下痕迹。

在代码的编写过程中,难免有些错误需要修改,或者想从以前的文件进行代码修改,这样就涉及到版本的追踪,如果你以前提交时日志写的非常清楚,此手帆那版本追踪回滚起来就事半功倍、得心应手。下面介绍几种版本回滚的办法森雹:

1.推荐的一种方法是,直接export一个你需要的版本,然后用你export的版本覆盖你的最新的版本,这样你就可以不丢失你新建的文件,同时获得最新的SVN版本控制。

*** 作步骤:TortoiseSVN→Show log→选中需要回滚的版本→右键→Export。

之后将修改的文件覆盖到你的最新版本,commit即可。

2. 若是你编辑了工程,在没有提交的前提下,你想放弃这些修改,你可以直接选择TortoiseSVN→revert就可以更新到工程的最新的版本。

3. 若是你想退回到某一个版本,你就可以直接选择TortoiseSVN→update to reversion,这样我们就可以把我们的版本回退到你选中的版本去,这种情况下SVN并没有显示出有什么冲突,并且新建立的文件也还在,但是在这种情况下你并不能直接在你回退后的版本上进行编辑,因为SVN的版本控制还是在最新的主干上。我们需要update并解决冲突。

4.你可以直接选择revert changes from this revision,这样的话你可以直接解决冲突并提交。不过这种方法的不足是,你新建的文件都没有了,整个工程都回退到之前的版本了。

5.可以从日志中回滚到你需要的版本,从日志中选中你需要的版本,然后Update item to reversion就好了,这种情况下SVN并没有显示薯慎出有什么冲突,并且新建立的文件也还在,但是在这种情况下你并不能直接在你回退后的版本上进行编辑,因为SVN的版本控制还是在最新的主干上。我们需要update并解决冲突。

如果客户端是TortoiseSVN的话,右键点击要回退的文件,选择TortoiseSVN--显示日志,手简找到要回退的那个版本圆洞,右键点击该文件,选择复原到此版本,这时文件会标记成红色感叹号,然后重新提交橘薯枯就行了。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12194987.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存