status
: 输出工作副本中文件和目录的状态。
用法:
status
[PATH
...]
不提供参数,只输出本地修改项目(不访问网络)。
提供 -q
参数,只输出本地修改项目的汇总信息。
提供 -u
参数,额外输出工作中版本和服务器过时信息。
提供 -v
参数,输出每个项目完整的版本信息。
输出中前七列,每列一个字符宽:
第一列:说明项目是否是添加的、删除的、或有其它改变。
' '
没有修改'A'
添加的'C'
冲突的'D'
删除的'I'
忽略的'M'
修改的'R'
替换的'X'
由外部定义创建的未版本目录'?'
项目不在版本控制之下'!'
项目丢失(不是由 svn
命令所删除)或未完成'~'
版本控制项目被不同种类(指文件和文件夹)的项目所覆盖第二列:文件或目录的属性修改情况。
' '
没有修改'C'
有冲突'M'
已修改第三列:工作目录是否由于写入而被其它正在修改工作目录的 Subversion 客户端所锁定。
' '
没有因为写入而锁定'L'
由于写入而锁定第四咧:稍后的提交将创建一个副本(会附加历史记录)。
' '
稍后的提交没有历史记录(项目是新添加的)'+'
稍后的提交有历史记录(项目是复制的)第五咧:项目是否是一个切换项目或外部文件。
' '
正常'A'
该项目有一个相对父目录切换的 URL
地址'C'
由外部定义所创建的受版本控制的文件第六列:该项目在存储库中是否被锁定以进行独占提交。
(没有 -u
参数)
' '
未被当前工作副本锁定'K'
已被当前工作副本锁定,但锁有可能被盗取或破坏(使用 -u
参数)
' '
在版本库和当前工作副本均没有锁定'K'
在版本库中已锁定,当前工作副本拥有这个锁'O'
在版本库中已锁定,该锁由另一个工作副本拥有'T'
在版本库中已锁定,当前工作副本拥有这个锁但已被盗取'B'
在版本库中没有锁定,当前工作副本拥有一个锁但已被破坏第七列:该项目是否是树冲突的受害者。
' '
正常'C'
树冲突如果该项目是树冲突的受害者,则会在项目的状态行之后另外输出一行,说明冲突的性质。
过时信息显示在第九列(当带有 -u
参数时):
'*'
服务器存在较新的版本' '
工作副本是最新的其余字段的宽度是可变的,并以空格分隔:
-u
或 -v
参数时;如果该项目是复制的,则为 '-'
)-v
参数时)如果问号('?'
)
出现在工作版本,最后提交版本,或最后提交作者位置,则表明该信息未知或与给定项目的状态无关
(例如,当项目是复制操作的结果时)。问号用作可视化占位符,以方便解析。
示例输出:
svn
status
wc
M wc/bar.c
A + wc/qax.c
svn
status
-u
wc
M 965 wc/bar.c
* 965 wc/foo.c
A + - wc/qax.c
Status against revision: 981
svn
status
--show-updates --verbose
wc
M 965 938 kfogel wc/bar.c
* 965 922 sussman wc/foo.c
A + - 687 joe wc/qax.c
965 687 joe wc/zig.c
Status against revision: 981
svn
status
M wc/bar.c
! C wc/qaz.c
> local missing, incoming edit upon update
D wc/qax.c
有效选项: | ||
---|---|---|
-u [--show-updates] | : | 显示更新信息 |
-v [--verbose] | : | 输出详细信息 |
-N [--non-recursive] | : | 已过时,与
--depth
相同 |
--depth ARG | : | 限制输出深度为
ARG (empty ,
files , immediates , 或
infinity ) |
-r [--revision] ARG | : | 指定版本
ARG (一些命令也接受 ARG1:ARG2
格式的版本范围),版本参数可以是如下之一:
|
-q [--quiet] | : | 不输出信息,或只输出概要信息 |
--no-ignore | : | 忽略默认值、以及 svn:ignore 和
svn:global-ignores 属性的忽略项 |
--incremental | : | 使用便于合并输出结果的方式进行输出 |
--xml | : | 输出为 XML 结果 |
--ignore-externals | : | 忽略外部定义 |
--changelist [--cl] ARG | : | 仅操作修改列表
ARG 的成员路径 |