码迷,mamicode.com
首页 > 系统相关 > 详细

Ubuntu使用之Svn命令小技巧

时间:2017-07-02 13:02:42      阅读:177      评论:0      收藏:0      [点我收藏+]

标签:删除   3.2   不能   文件夹   pop   查看   修改   mod   保存   

注:
[svn Path]:是指要代替码分支的server绝对路径
[Path]:是指终端相对当前文件夹的相对路径,假设是在当前文件夹下。就省略路径


①.取svnserver的代码:

svn co [svn Path]


②.查看当前文件夹的svn状态:

svn st


③.查看某个文件夹的svn状态:

svn st [Path]dirName


④.查看某文件在svn上的改动记录:

svn log [Path]fileName


⑤.查看某文件/文件夹在svn上的近期n次改动记录(n必须是大于0的整数):

svn log [Path]fileName/dirName -l n


⑥.查看某文件/文件夹在svn上的近期n次提交信息(包含修改哪些文件):

svn log [Path]fileName/dirName -l n -v


⑦.查看某个svn号的改动所涉及的文件:

svn log -v -r r949


⑧.查看某文件在svn上的二个改动记录差别(有差别的内容,冒号前面的记录内容显示为-;后面为+):

svn di [Path]fileName -r r1:r2


⑨.查看某文件与svn上的差别:

svn di [Path]fileName


⑩.添加某个文件:

svn add [Path]fileName


11.删除某个文件:

svn rm [Path]fileName


12.添加目录:

svn add [Path]dirName --no-ignore


13.删除目录:

svn rm [Path]dirName -rf


14.某目录下新增一部分文件(仅仅有新增的文件)(有.so文件的。最好后面加keyword --no-ignore):

svn add $(svn st [Path] | awk ‘{print $2}‘)
svn add $(svn st [Path] | grep "?

" | awk ‘{print $2}‘)


15.某目录下删除一部分文件(仅仅有删除的文件):

svn rm $(svn st [Path] | awk ‘{print $2}‘)


16.清理新拷贝的文件夹及子文件夹以下到全部.svn文件夹

find [Path]dirName -name ".svn" | xargs rm -rf
rm `find [Path]dirName -name .svn` -rf


17.提交到server:

svn ci [Path]fileName [Path]dirName -m "Changed notes"


18.假设文件名称中带有字符“@”,svn add 或 svn rm 时要在最后加上一个"@"字符才干够识别对应的指令:

svn add 702641@tmall_3.2.0.apk@
svn rm 702565@laiwang_android_4.1.2.apk@

19,grep 过滤.svn文件
打开 ~/.bashrc (这是bash的当前用户配置文件),在文件的最上方加入这样一条:
export GREP_OPTIONS="--exclude-dir=\.svn"
(注意 = 的前后不能有空格。不然在加载该配置文件时会提示错误)
保存并关闭,同一时候在命令行键入例如以下命令:
source ~/.bashrc (让bash又一次读取脚本)

20.patch 同步代码使用方法
产生同步代码文件包:
svn di > xxx.patch
合并代码文件包的改动:
patch -p0 < xxx.patch

Ubuntu使用之Svn命令小技巧

标签:删除   3.2   不能   文件夹   pop   查看   修改   mod   保存   

原文地址:http://www.cnblogs.com/brucemengbm/p/7105695.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!