SVN标准命令
| 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 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上点击合入版本管理标记本次合并 |
||
SVN标准命令的更多相关文章
- svn client命令
经常使用svn命令说明 1.从SVN仓库中检索出代码到工作拷贝: # svn checkout https://svn.sinaapp.com/appname [workcopy] 当中workcop ...
- SVN Log命令常用组合【转】
转自:https://blog.csdn.net/xuanwenchao/article/details/8875103 版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请 ...
- 关于SVN常用命令之export
SVN官方命令参考地址:http://www.subversion.org.cn/svnbook/nightly/svn.ref.html 关于export命令 导出一个干净的不带.svn文件夹的目录 ...
- shell编程:定义简单标准命令集
shell是用户操作接口的意思,操作系统运行起来后都会给用户提供一个操作界面,这个界面就叫shell,用户可以通过shell来调用操作系统内部的复杂实现,而shell编程就是在shell层次上进行编程 ...
- svn上想回滚代码怎么办?——svn merge 命令
小博客断更了很久,最近想接着尝试建立写作的习惯,把自己工作生活遇到的有用知识沉淀下来.尽管微信公共账号比较火,但个人觉得这种不能用搜索引擎检索的东西完全就是历史的倒退,就像 RSS 这种提高信息传播效 ...
- svn 终端命令
你可以仅仅删除冲突的文件并且提交,但是svn resolved除了删除冲突文件,还修正了一些记录在工作拷贝管理区域的记录数据,所以我们推荐你使用这个命令. 恢复本地修改 svn revert [-- ...
- 【转】SVN linux命令及 windows相关操作(一)
从以下博客转载和整理: http://www.cnblogs.com/richcem/archive/2011/01/08/1930823.html http://blog.wpjam.com/m/t ...
- SVN基础命令手册
SVN版本号:1.5 及更新版本号 名词说明: WC:Working Copy 你的工作区 Versioned:受控的:受版本号控制的 SVN是什么? SVN是开源的版本号控制系统. 比CVS很多其它 ...
- SVN的命令行操作
最近在进行svn二次开发,使用的是svnkit.看了很多svnkit的api,渐渐发现都是和SVN的命令行操作对应的.顺便研究一下svn的命名行操作. 1.将文件checkout到本地目录: 基本命令 ...
随机推荐
- nginx: [emerg] getpwnam(“www”) failed
在配置nginx 时提示如下错误时:nginx: [emerg] getpwnam(“www”) failed 解决方案一 在nginx.conf中 把user nobody的注释去掉既可 解决方案二 ...
- sqlMapConfig.xml配置文件详解
sqlMapConfig.xml配置文件详解: Xml代码 Xml代码 <? xml version="1.0" encoding="UTF-8" ?& ...
- openstack 前期准备工作
OS 是 centos6.5_X86_64 一.vmware 虚拟机 准备两台机虚拟机即可 二.导入第三方安装源 [root@openstack ~]# rpm -Uvh http://dl.fedo ...
- 66. 有序数组构造二叉搜索树[array to binary search tree]
[本文链接] http://www.cnblogs.com/hellogiser/p/array-to-binary-search-tree.html [题目] 编写一个程序,把一个有序整数数组放到二 ...
- Java for LeetCode 025 Reverse Nodes in k-Group
Given a linked list, reverse the nodes of a linked list k at a time and return its modified list. If ...
- MyEclipse内存溢出问题解决方法
tomcat从1.7换到1.6,一直报这个错:java.lang.reflect.InvocationTargetException 解决方法: 加入: -server -Xms512m -Xmx20 ...
- C语言字符串处理
一. C语言中,为什么字符串可以赋值给字符指针变量 char *p,a='5';p=&a; //显然是正确的,p="abcd"; ...
- [MAC] Mac下的SVN命令行
转载自: http://www.cnblogs.com/snandy/p/4072857.html Mac自带了SVN命令行,如我的升级到10.10(OSX yosemite)后命令行版本为1.7.1 ...
- [Android Pro] Android 打包流程
Android 打包流程: 官网地址:http://developer.android.com/tools/building/index.html 具体的打包步骤如下: 1:生成R.java类文件:E ...
- css3学习总结1--CSS3选择器
CSS3的属性选择器主要包括以下几种: 1. E[attr^="value"]:指定了属性名,并且有属性值,属性值是以value开头的: 2. E[attr$="valu ...