3. svnlook—Subversion Repository Examination

svnlook is a command-line utility for examining different aspects of a Subversion repository. It does not make any changes to the repository—it's just used for peeking. svnlook is typically used by the repository hooks, but a repository administrator might find it useful for diagnostic purposes.

Since svnlook works via direct repository access (and thus can be used only on the machine that holds the repository), it refers to the repository with a path, not a URL.

如果没有指定修订版本或事物,svnlook缺省的是版本库最年轻的(最新的)修订版本。

3.1. svnlook 选项

Options in svnlook are global, just as they are in svn and svnadmin; however, most options apply to only one subcommand since the functionality of svnlook is (intentionally) limited in scope:

--copy-info

导致 svnlook changed 复制源显示详细信息。

--diff-copy-from

Print differences for copied items against the copy source.

--extensions (-x) ARG

Specifies customizations which Subversion should make when performing difference calculations. Valid extensions include:

--ignore-space-change (-b)

Ignore changes in the amount of white space.

--ignore-all-space (-w)

Ignore all white space.

--ignore-eol-style

Ignore changes in EOL (end-of-line) style.

--unified (-u)

Show three lines of unified diff context.

The default value is -u.

Note that when Subversion is configured to invoke an external diff command, the value of the --extension (-x) option isn't restricted to the previously mentioned options, but may be any additional arguments which Subversion should pass to that command. If you wish to pass multiple arguments, you must enclose all of them in quotes.

--full-paths

Causes svnlook tree to display full paths instead of hierarchical, indented path components.

--limit (-l) ARG

Limit output to a maximum number of ARG items.

--no-diff-deleted

Prevents svnlook diff from printing differences for deleted files. The default behavior when a file is deleted in a transaction/revision is to print the same differences that you would see if you had left the file but removed all the content.

--no-diff-added

Prevents svnlook diff from printing differences for added files. The default behavior when you add a file is to print the same differences that you would see if you had added the entire contents of an existing (empty) file.

--non-recursive (-N)

Operate on a single directory only.

--revision (-r)

指定你希望检查的版本号。

--revprop

Operates on a revision property instead of a property specific to a file or directory. This option requires that you also pass a revision with the --revision (-r) option.

--transaction (-t)

指定你希望检查的事务 ID。

--show-ids

Shows the filesystem node revision IDs for each path in the filesystem tree.

--verbose (-v)

Be verbose. When used with svnlook proplist, for example, this causes Subversion to display not just the list of properties, but their values also.

--xml

3.2. svnlook 子命令

svnlook 程序有多个子命令。