log: 显示一组版本和/或路径的日志消息。
用法:
log
[PATH][@REV]log
URL[@REV]
[PATH...]输出与 PATH (默认值:“.”)
相对应 URL 的日志消息。如果指定了 REV
参数,则它将决定首先搜索 URL 的哪个版本,默认版本范围是
REV:1。如果没有指定 REV,则默认版本范围为
BASE:1,因为 HEAD 版本中可能不存在这个 URL。
输出 URL 下 PATH
(默认值:“.”) 的日志消息。如果指定了 REV
参数,则它将决定首先搜索 URL 的哪个版本,默认的版本范围是
REV:1;否则,在 HEAD 版本中查找该 URL,默认版本范围是
HEAD:1。
可以指定多个 “-c” 或 “-r” 选项 (但不能指定
“-c” 和 “-r”
选项的组合),并且可以混合使用正向和反向范围。
使用 -v
选项,还可以在每条日志消息中输出所有受影响的路径。每个修改的路径前面都有一个描述修改的符号:
A:路径已添加或复制。D:路径被删除。R:路径已替换(在同一版中删除并重新添加)。M:路径的文件和/或属性内容已修改。如果一个添加或替换的路径是从其它地方复制的,则复制源路径和版本将显示在括号中。 如果一个文件或目录从一个路径移至另一个路径,则旧路径将被列为已删除, 而新路径将被列为从旧路径先前版本复制而来的。
使用 -q 选项,可不输出日志消息主体自身 (请注意,它与 -v
兼容)。
即使明确请求了该修订多个受影响的路径,每个日志消息也仅输出一次。默认情况下,日志沿着复制历史记录。使用
--stop-on-copy 选项可以禁用此行为,这对于确定分支点很有用。
选项 --depth 仅与选项 --diff
结合使用,将显示的差异范围限制为指定的深度。
如果使用了 --search 选项,则仅当提供的搜索模式与作者,日期,日志消息文本 (除非使用
--quiet 选项) 任一项匹配时,才会显示日志消息。或者如果还提供了
--verbose 选项,也显示修改的路径。
搜索模式可以包含 “GLOB 语法” 的通配符:
? :匹配任何单个字符* :匹配任意字符序列[abc] :匹配括号内列出的任何字符如果提供了多个搜索选项,只要匹配提供的任一搜索模式,就会显示日志消息。 如果使用了
--search-and 选项,该选项的参数将于其前面的 --search 或
--search-and 相组合,只有匹配组合的搜索模式时,才会显示日志消息。如果将
--limit 与 --search 结合使用,则
--limit 将限制所搜索日志消息的数量,而不是限制输出匹配日志消息的数量。
示例:
显示当前工作副本目录最新的 5 条日志消息,并显示每次提交中更改的路径:
svn log -l
5 -v
显示自版本 42 起 bar.c 的日志:
svn log
bar.c@42
显示对 foo.c 每次提交的日志消息和差异:
svn log --diff
http://www.example.com/repo/project/foo.c
(由于上述命令使用完整的 URL,因此不需要工作副本。)
使用 URL 快捷方式 ^/ 显示目录 “/trunk” 的子项 foo.c 和
bar.c 在版本 50 中的日志消息:
svn log
^/trunk@50 foo.c bar.c
显示在下一次执行 “svn ” 时对 updatefoo.c
将传入的所有修改的日志消息:
svn log --r
BASE:HEAD foo.c
显示创建 /branch/foo 的版本的日志消息:
svn log
--stop-on-copy --limit 1
-r0:HEAD
^/branches/foo
如果在版本 22 中将 ^/trunk/foo.c 移至了 ^/trunk/bar.c,则
svn
在其更改的路径列表中显示一个删除和复制,例如:log -v
D /trunk/foo.c
A /trunk/bar.c (from /trunk/foo.c:21)
| 有效选项: | ||
|---|---|---|
-r [--revision] ARG | : | 指定版本
ARG (一些命令也接受 ARG1:ARG2
格式的版本范围),版本参数可以是如下之一:
|
-c [--change] ARG |
: | 版本 ARG
(类似 ) 所作的修改:
|
| -q [--quiet] | : | 不输出日志信息 |
| -v [--verbose] | : | 也输出全部影响的路径项 |
| -g [--use-merge-history] | : | 使用/显示合并历史记录中的其他信息 |
--targets ARG | : | 将文件
ARG 的内容作为附加参数 |
| --stop-on-copy | : | 遍历历史时不要跨越复制 |
| --incremental | : | 使用便于合并输出结果的方式进行输出 |
| --xml | : | 输出为 XML 结果 |
-l [--limit] ARG |
: | 输出日志项的最大数量 |
| --with-all-revprops | : | 取回所有版本属性 |
| --with-no-revprops | : | 不取回任何版本属性 |
--with-revprop ARG | : | 取回版本属性
ARG |
--depth ARG | : | 限制输出深度为
ARG (empty,
files, immediates, 或
infinity) |
| --diff | : | 生成差异格式 |
--diff-cmd ARG | : | 使用
ARG 作为比较命令 |
| --internal-diff | : | 覆盖配置文件中指定的 diff-cmd
比较命令 |
-x [--extensions] ARG |
: | 为外部比较、内部比较、或追溯命令指定比较选项,默认为 “-u”。
各个选项之间使用空白分隔。外部比较和追溯命令使用的选项:
|
--search ARG | : | 使用
ARG 作为搜索模版 (Glob 语法,大小写和重音敏感,可能需要引号防止
shell 展开) |
--search-and ARG | : | 将
ARG 与先前的搜索模式相结合 |