作用
diff (di): 显示两个版本或路径的差异。
用法
diff [-c M | -r N[:M]] [TARGET[@REV]…]
1、显示版本 REV 中 TARGET 在两个不同的版本之间的差异。TARGET 要么全是
工作副本路径,要么全是 URL。如果 TARGET 是工作副本路径,N 默认为
BASE,M 默认为工作副本;如果 TARGET 是 URL,N 必须指定, M 默认为 HEAD。
“-c M” 等价于 “-r M-1:M”,“-c -M” 等价于 “-r M:M-1”。
diff [-r N[:M]] –old=OLD-TGT[@OLDREV] [–new=NEW-TGT[@NEWREV]] \
[PATH…]
2、显示新旧版本中对应目标的差异。PATH 是相对于新旧目标的相对路径,
它限制只输出这些路径上的差异。新旧目标可以是工作副本路径或地址 URL[@REV]。
新目标默认与旧目标相同,OLDREV 默认为 N,NEWREV 默认为 M。
diff OLD-URL[@OLDREV] NEW-URL[@NEWREV]
3、“svn diff –old=OLD-URL[@OLDREV] –new=NEW-URL[@NEWREV]” 的简写。
使用不加参数的 “svn diff” 显示工作副本中的本地修改。
有效选项:
-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
--old ARG : 使用 ARG 作为旧目标
--new ARG : 使用 ARG 作为新目标
-N [--non-recursive] : 过时;尝试 --depth=files 或 --depth=immediates
--depth ARG : 受深度参数 ARG(“empty”,“files”,“immediates”,或“infinity”) 约束的操作
--diff-cmd ARG : 使用 ARG 作为比较命令
-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 函数名称。
--no-diff-deleted : 不要输出删除文件造成的差异
--notice-ancestry : 比较差异时提示原始信息
--summarize : 显示结果的概要
--changelist ARG : 只能对修改列表 ARG 成员操作
[aliases: --cl]
--force : 强制操作运行
--xml : 输出为 XML
全局选项:
--username ARG : 指定用户名称 ARG
--password ARG : 指定密码 ARG
--no-auth-cache : 不要缓存用户认证令牌
--non-interactive : 不要交互提示
--trust-server-cert : 不提示的接受未知的 SSL 服务器证书(只用于选项 “--non-interactive”)
--config-dir ARG : 从目录 ARG 读取用户配置文件
--config-option ARG : 以下属格式设置用户配置选项:
FILE:SECTION:OPTION=[VALUE]
例如:
servers:global:http-library=serf
上一篇文章:
【svn的switch命令说明】