SVN一些用法整理

在做源码版本管理的时候,有时整个大版本的升级,会替换很多文件,也会新增很多文件,我们需要在升级完成之后对整个网站加入版本管理。

1.对更新删除导致丢失的文件进行批量删除

#svn status | awk '{if($1 == "!"){print $2}}' | xargs -r svn delete

原理是通过查询当前文件夹的文件状态,用awk进行分割获取到!标记的文件名称,附加给xargs 分别执行svn delete 操作。
如果中途遇到报错,可以多运行几次,有些文件可能已经丢失了。

2.对新增的文件进行批量新增

#svn status | awk '{if($1 == "?"){print $2}}' | xargs -r svn add

这个语句的原理和上一条删除是一样的,只是针对文件的状态标记进行筛选操作。

3.对新增或者修改的文件进行批量提交入库

#svn status | awk '{if($1 == "M" || $1 == "A"){print $2}}' | xargs -r svn commit -m "这里是备注"

同样的方法,只是在提交入库的时候需要提交备注名称,不然会报错。使用-m参数加上备注内容即可,比如备注“将wordpress从5.0.1更新到5.0.2版本”,方便下次查看回滚版本。

4.查看当前目录版本控制的文件和目录列表

#svn list

5.查看当前文件夹的版本控制情况

#svn status

发布者

勿忘心安

一念净心花开遍世界!