svn revert 恢复本地修改

描述:

svn revert              — 取消所有的本地编辑。

revert命令顾名思义就是对修改过的东西进行回滚操作。

恢复所有对文件和目录的修改,并且解决所有的冲突状态。svn revert不会只是恢复工作拷贝中一个项目的内容,也包括了对属性修改的恢复。最终,你可以使用它来取消所有已经做过的预定操作(例如,文件预定要添加或删除可以“恢复”)。

用法:

句法 (Syntax)

svn revert: 恢复原始未改变的工作副本文件 (恢复大部份的本地修改)。revert:
用法: revert PATH…
注意: 本子命令不会存取网络,并且会解除冲突的状况。但是它不会恢复
被删除的目录

例子:

1、一般有2种情况发生时需要用到回滚的操作

修改过的东西没有递交(commit)

这种情况下revert会取消之前的修改

句法 (Syntax)

svn revert [-R] xxx_file_dir

如果需要回滚的是一个目录则加上-R(递归)可选参数

2、改动的东西并且递交了

这种情况下,用svn merge命令来进行回滚。

步骤如下:

1)执行#svn update命令保证工作区文件是最新的,比如最新版本号是20

2)然后找出要回滚的确切版本号:

句法 (Syntax)

svn log xxx_file_dir

假设根据svn log日志查出要回滚的版本号是10,如果想要更详细的了解情况,可以使用svn diff -r 20:10 [xxx_file_dir]

3)回滚到版本号10:

句法 (Syntax)

svn merge -r 20:10 xxx_file_dir

4)提交回滚:

句法 (Syntax)

svn commit -m "注释..."

提交后版本变成了29

完毕

3、丢弃对一个文件的修改

句法 (Syntax)

svn revert foo.php

4、如果你希望恢复一整个目录的文件,可以使用--recursive选项

句法 (Syntax)

svn revert --recursive .

5、最后,你可以取消预定的操作

句法 (Syntax)

svn add mistake.txt whoops
A         mistake.txt
A         whoops
A         whoops/oopsie.c

svn revert mistake.txt whoops
Reverted mistake.txt
Reverted whoops

svn status
      mistake.txt
      whoops


  • 使用社交账号登录,本站支持
全部评论(0)