放弃本地的修改内容
也就是说,你所做的修改仍然是在本地,尚未提交到服务器端。这种情况下,使用“svn revert”命令就能取消之前的修改。用法如下:
svn revert [-R] target
其中target是你需要放弃修改(即还原成服务器版本)的目录或文件。
当target为单个文件时,直接“svn revert target”就行了;
当target为某个目录时,需要加上参数-R(Recursive,递归),否则只会针对target根目录进行处理,而不会处理它下面的子目录。
比如:想要放弃整个工程里所有的修改内容,则可以在整个工程的根目录下执行下述命令:
svn revert -R *
注意:一旦使用了这个命令,就意味着你完全放弃本地所做的修改,这些文件的内容将会被彻底还原成服务器端的版本。而这种放弃不可撤销的,是找不回来的,这一点请注意!
特别说明:此处的revert命令,只是针对之前就已经存在的那些文件。
如果你本次还新增了一些文件,则revert命令并不会将你新增的文件删除或者清空,仍需你自己手动操作。经过摸索,我找到了一个命令可以完成这个任务,也就是说,可以自动删除那些你新增的、但是尚未提交的文件。
svn st | grep '^?' | awk '{print $2}' | xargs rm -rf