详解Linux上svn命令行批量操作
详解Linux上svn命令行批量操作
虽然说git很好,大多数时候我也是使用git,但是有时候因为一些原因,不得不使用svn,而在linux上使用svn是没有像windows上的tortoisesvn的软件的(网上有说有类似的,但是折腾了很久仍然没有成功),所以直接来命令行吧。
我们直接安装svn就好,然后文件修改之后使用命令
svnstatus
查看文件的跟踪信息,这里会使用一些代号,对应的大概是
“”无修改 “A”新增 “C”冲突 “D”删除 “G”合并 “I”忽略 “M”改变 “R”替换 “X”未纳入版本控制,但被外部定义所用 “?”未纳入版本控制 “!”该项目已遗失(被非svn命令所删除)或是不完整 “~”版本控制下的项目与其它类型的项目重名
这里我们需要考虑的是“缺失”和“未纳入版本控制“,也就是”!“和”?“,直接使用下面的命令即可
svnadd`svnstatus|grep?|awk'{print$2}'` svndelete`svnstatus|grep!|awk'{print$2}'`
注意命令中的反引号,是”esc“键下面,”1“旁边的那个,表示一个命令。
使用上面的命令之后,对应的文件的状态就会变成对应的“D”和“A”,然后就可以使用命令
svncommit-m"xxxx"
进行提交了!
这里提到的两种命令操作对于文件明中存在空格的情况会出问题
如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!