|
|
SVN标准命令 |
范例 |
checkout |
检出 |
svn co URL |
检出app/search/news/apache/主干上最新版本到本地工作副本,可执行命令:
svn co https://svn.baidu.com/app/search/news/trunk/apache/
|
up |
更新到当前URL的末端 |
svn up |
执行svn info ,根据第二行URL显示,若当前工作副本为主干,执行svn up则将版本更新到了主干末端;
若当前工作副本显示为分支,执行svn up 则将版本跟新到了分支末端。 |
更新到某一tag/branch |
svn switch (tag/分支)URL |
执行svn info 查看当前工作副本在主干上,想要更新到分支news_2-23-33_BRANCH,可执行命令:
svn switch https://svn.baidu.com/app/search/news/branches/apache/news_2-23-33_BRANCH/
|
add |
增加 |
svn add 文件名
|
在本地工作副本新增test.cpp到版本库,可执行命令: svn add test.cpp svn ci -m "commit log" |
rm |
删除文件 |
svn rm 文件名 |
删除版本库中的test.cpp文件,可执行命令: svn rm test.cpp svn ci -m "commit log" |
删除目录 |
svn rm 目录名 |
删除版本库中的test目录,可执行命令: svn rm test svn ci -m "commit log" |
diff |
与base版本(最后检出或者更新到的版本)对比 |
svn diff |
|
与版本库中最新版本对比 |
svn diff -r head |
|
当前工作副本,两个版本之间对比 |
svn diff -r reversion1:reversion2 |
|
版本库中任意两个tag做对比 |
svn diff (tag1)URL (tag2)URL |
想要查看apache_2-0-32-0_PD_BL和apache_2-0-31-0_PD_BL两个tag的diff
svm diff https://svn.baidu.com/app/search/news/tags/apache/apache_2-0-32-0_PD_BL/ https://svn.baidu.com/app/search/news/tags/apache/apache_2-0-31-0_PD_BL/ |
ci |
提交 |
svn ci -m "commit log" |
|
log |
查看当前工作副本log |
svn log |
执行svn log显示如下: r7525 | sunbing | 2010-07-14 13:53:39 +0800 (三, 2010-07-14) | 1 行 modify by sunbing |
只查看指定版本的log |
svn log -r |
|
打印log所有附加信息 |
svn log -v |
执行svn log -v 显示如下: r7525 | sunbing | 2010-07-14 13:53:39 +0800 (三, 2010-07-14) | 1 行 改变的路径: M /branches/checkd/checked_1-0-2_BRANCH/test.docx modify by sunbing
|
查看当前tag/branch版本详情 |
svn log --stop-on-copy -v |
执行svn log --stop-on-copy -v 显示如下: r7524 | sunbing | 2010-07-14 13:52:39 +0800 (三, 2010-07-14) | 1 行 改变的路径: A /branches/checkd/checked_1-0-2_BRANCH (从 /trunk/checkd:7522) branch by sunbing
|
info |
查看当前工作副本所在URL |
svn info |
执行svn info 后我们可以从第二栏URL处,获知当前工作副本所在位置,最后修改的作者,最后修改的时间等信息如: svn info 路径: . URL: https://172.22.1.15/app/search/iknow/branches/checkd/checked_1-0-2_BRANCH 版本库根: https://172.22.1.15/app/search/iknow 版本库 UUID: 94316f2c-c838-430d-ace4-078f12467ee1 版本: 7530 节点种类: 目录 调度: 正常 最后修改的作者: sunbing 最后修改的版本: 7525 最后修改的时间: 2010-07-14 13:53:39 +0800 (三, 2010-07-14) |
status |
查看工作副本的状态 |
svn st |
|
查看文件的taglist |
svn命令不支持,可执行cs taglist |
|
tag |
新增tag |
svn cp . (tag)URL |
在本地工作副本完成修改并提交,此时,标记tag:apache_2-0-32-0_PD_BL,可执行命令:
svn cp . https://svn.baidu.com/app/search/news/tags/apache/apache_2-0-32-0_PD_BL/ -m"commit log"
|
删除tag |
svn rm (tag)URL -m "commit log" |
删除tag可直接对库进行操作,例如删除tag:apache_2-0-32-0_PD_BL,可执行命令:
svn rm https://svn.baidu.com/app/search/news/tags/apache/apache_2-0-32-0_PD_BL/ -m "commit log" |
覆盖已经存在的tag |
不支持 |
|
分支开发 |
创建branch |
svn cp (基线版本)URL (分支)URL -m "commit log" |
首先选择好创建分支的基线版本,例如要以apache模块的主干最新版本为基线创建分支,将主干代码co到本地后,可执行命令: svn cp . https://svn.baidu.com/app/search/news/branches/apache/news_2-23-33_BRANCH/ -m "commit log"
|
删除branch |
svn rm (分支)URL -m "commit log" |
删除tag可直接对库进行操作,例如删除分支:news_2-23-33_BRANCH,可执行命令: svn rm https://svn.baidu.com/app/search/news/branches/apache/news_2-23-33_BRANCH/ -m "commit log"
|
同步 |
svn co (主干)URL cd ~/wc svn merge (主干)URL (待同步tag)URL svn ci -m "commit log" svn cp (主干)URL (以_PD_BL_MAIN结尾的tag)URL -m"commit log"
|
当分支上的mp3_6-1-1-100_PD_BL版本上线后,目前主干上没有开发,则需要把分支上的内容同步到主干
svn co https://svn.baidu.com/fe/trunk/template/mp3 #将主干最新版本检出到本地
cd mp3 #进入模块mp3的目录 svn merge https://svn.baidu.com/fe/trunk/template/mp3 https://svn.baidu.com/fe/tags/template/mp3/mp3_6-1-1-100_PD_BL #将mp3_6-1-1-100_PD_BL版本的内容完全覆盖到主干上
svn ci -m "commit log" #将修改提交到版本库中
svn cp https://svn.baidu.com/fe/trunk/template/mp3 https://svn.baidu.com/fe/tags/template/mp3/mp3_6-1-1-100_PD_BL_MAIN #同步完成后,在主干末端标记以“_PD_BL_MAIN”结尾的同步tag
|
合并 |
svn co (合并目标)URL cd ~/wc svn merge (基线版本tag)URL (上线tag)URL svn ci -m "commit log" svn cp (合并目标)URL (上线tag_MERGE_的tag对应)URL -m"commit log"
|
以将已经上线的appac_1-0-48-4_PD_BL版本合并到正在开发中的image_5-0-18_BRANCH分支为例:
svn co https://svn.baidu.com/app/search/image/branches/appac/image_5-0-18_BRANCH #将image_5-0-18_BRANCH分支的最新代码检出到本地工作副本
cd image_5-0-18_BRANCH #进入分支
svn merge https://svn.baidu.com/app/search/image/tags/appac/appac_1-0-47-0_PD_BL https://svn.baidu.com/app/search/image/tags/appac/appac_1-0-48-4_PD_BL #在scmpf上查询当前版本的基线为appac_1-0-47-0_PD_BL,将上线tag的URL内容合并进来
svn ci -m "commit log"
svn cp https://svn.baidu.com/app/search/image/trunk/appac/ https://svn.baidu.com/app/search/image/tags/appac/appac_1-0-48-4_MERGE_image_5-0-18 -m "commit log" #合并完成后标记合并tag,并需要到scmpf上点击合入版本管理标记本次合并
|
|
|
|
|
|
|
|
|
|
|
|
|