svn命令行操作

  1. 查看版本库下的文件和目录列表
svn list(ls) svn://***** --verbose
  1. 查看当前分支从哪个支线创建而来
svn log -v -r 1:HEAD --limit 1 --stop-on-copy
  1. 查看当前工作副本所在URL
svn  info
  1. 切换分支
svn switch svn://***(新分支)

svn switch svn://*** svn://***本地目录当前分支

svn switch http://localhost/test/456 . //(原为123的分支)当前所在目录分支到localhost/test/456

  1. 新建、删除分支标签
svn copy base_branch new_branch -m "make B branch"
svn rm (分支)URL   -m "commit log" 

svn cp . (tag)URL
svn rm (tag)URL -m "commit log"
  1. 同步代码到最新
svn update(up)
  1. 查看当前工作副本的状态
svn status(st)
  1. 加锁/解锁
svn lock -m “加锁备注信息文本“ [--force] 文件名
svn unlock 文件名
  1. 合并分支
#查找创建分支时的版本号reversion
svn log [-q] --stop-on-copy

svn merge -r 分支版本号:HEAD 分支的URL   --dry-run   #HEAD为当前主干上的最新版本

svn merge url -r xxxx:yyyy ./  (将url指定的code的xxxx版本到yyyy版本,merge到本地(注意:该方式不包括xxxx版本!!))

svn merge url -r HEAD ./

svn merge url -c xxxx ./         (把svn 版本号为xxxx的改动合到你的本地)


svn st | grep ^C      # 查找合并时的冲突文件,手工解决冲突
svn resolved filename # 告知svn冲突已解决
svn commit -m ""      # 提示合并后的版本


有效选项: 
  -r [--revision] ARG      : ARG (一些命令也接受ARG1:ARG2范围)
                             版本参数可以是如下之一: 
                                NUMBER       版本号
                                '{' DATE '}' 在指定时间以后的版本
                                'HEAD'       版本库中的最新版本
                                'BASE'       工作副本的基线版本
                                'COMMITTED'  最后提交或基线之前
                                'PREV'       COMMITTED的前一版本
  -c [--change] ARG        : 在ARG版本(如同 -r ARG-1:ARG)作的修改
                             如果ARG为负数则等价于 -r ARG:ARG-1
  -N [--non-recursive]     : 过时;尝试 --depth=files 或 --depth=immediates
  --depth ARG              : 受深度参数 ARG(“empty”,“files”,“immediates”,或“infinity”) 约束的操作
  -q [--quiet]             : 不打印信息,或只打印概要信息
  --force                  : 强制操作运行
  --dry-run                : 尝试操作但没有修改
  --diff3-cmd ARG          : 使用 ARG 作为合并命令
  --record-only            : 标记版本为已合并(使用 -r 参数)
  -x [--extensions] ARG    : 缺省: “-u”。当 Subversion 调用外部比较程序时,ARG 直接传给它。但是当
                             Subversion 使用缺省的内置比较实现,或者正
                             显示追溯时, ARG 可以是: 
                                -u (--unified):
                                   输出三行统一上下文。
                                -b (--ignore-space-change):
                                   忽略空白数量的修改。
                                -w (--ignore-all-space):
                                   忽略所有的空白。
                                --ignore-eol-style:
                                   忽略行尾样式的改变。                            -p (--show-c-function):
                                   在比较输出中显示 C 函数名称。
  --ignore-ancestry        : 合并时忽略原始信息
  --accept ARG             : 指定自动解决冲突动作
                            ('postpone', 'base', 'mine-conflict',
                             'theirs-conflict', 'mine-full', 'theirs-full',
                             'edit', 'launch')
  --reintegrate            : 批量合并所有源 URL 中未合并的修改

  1. 提交修改
svn add test.php <- 添加test.php
svn add *.php <- 添加当前目录下所有的php文件
svn commit -m “添加我的测试用test.php“ test.php

SVN 常用命令一览表

https://www.kancloud.cn/i281151/svn/197160

http://blog.sina.com.cn/s/blog_567e650201012jmq.html

命令 功能 使用格式
checkout 检出 svn co URL
up 更新到当前URL的末端 svn up
switch 更新到某一tag/branch svn switch (tag/分支)URL
add 增加 svn add 文件名
rm 删除文件 svn rm 文件名
删除目录 svn rm 目录名
diff 与base版本(最后检出或者更新到的版本)对比 svn diff
与版本库中最新版本对比 svn diff -r head
当前工作副本,两个版本之间对比 svn diff -r reversion1:reversion2
版本库中任意两个tag做对比 svn diff (tag1)URL (tag2)URL
ci 提交 svn ci -m "commit log"
log 查看当前工作副本log svn log
只查看指定版本的log svn log -r
打印log所有附加信息 svn log -v
查看当前tag/branch版本详情 svn log --stop-on-copy -v
info 查看当前工作副本所在URL svn info
status 查看工作副本的状态 svn st
查看文件的taglist svn命令不支持,可执行cs taglist
tag 新增tag svn cp . (tag)URL
删除tag svn rm (tag)URL -m "commit log"
覆盖已经存在的tag 不支持
分支开发 创建branch svn cp (基线版本)URL (分支)URL -m "commit log"
删除branch svn rm (分支)URL -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"
合并 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"
posted @ 2019-09-16 16:55  antball  阅读(2665)  评论(0编辑  收藏  举报