ios SVN 版本恢复命令行操作

来源:互联网 发布:js删除dom元素 编辑:程序博客网 时间:2024/06/16 07:49

svn没有恢复旧版本的直接功能,不过可以使用svn merge命令恢复。

比如说当前HEAD为14,而我要恢复成10版本,怎么做?用svn merge:

1svn update
2 
3svn merge --revision 14:10
4 
5svn commit -m "restore to revision 10"

可能会很奇怪,因为不理解为什么合并能恢复旧版本。

这里要理解一个关键点,就是svn merge的原理。merge是比较指定版本的差异,然后把这些差异应用到本地工作副本,而-r后的14:10,是指相对于版本14来说版本10的变化(注意,这个版本的次序很重要。),也就是相对版本14,我版本10添加了哪些文件或目录,以及哪些文件添加了哪些行删除了哪些行。

由于在客户端提交应用程序时的误操作,导致修改了基线版本,此处利用两个命令来进行恢复:

1、将客户端恢复合并到指定版本:

1svn merge -r 112:111 svn://192.168.0.119/UBoot/trunk/u-boot-1.3.3

此步骤将下位机由112恢复到111版本:

2、重新修订基线版本

1svn commit -m "Undoing change committed in r111."

此步骤将恢复后的111版本提交,但是此时的版本号为113