作用: 将版本库的修改合并到工作副本中。
使用语法: update [PATH...],
如果没有指定版本,则将工作副本更新到 HEAD 版本。否则同步到 -r 选项所
指定的版本。 每更新一项就输出一行信息,使用首字符来报告执行的动作。这些字符的含义是:
A 已添加
D 已删除
U 已更新
C 合并冲突
G 合并成功
E 已存在
第一列字符表示文件内容更新,第二列表示文件属性更新。第三列中的字符"B"
表示此文件上的锁被终止或窃取。
如果使用了"--force" 选项,在工作副本中未版本控制的障碍路径,不会自动
导致签出失败。 如果障碍路径与版本库中的对应路径类型相同(文件或目录),它
将成为受版本控制的路径,但是内容不改变。它意味着障碍路径的子孙,如果也
是障碍路径,那么也将受版本控制。对于障碍路径中的文件,如果与版本库内的
不同,将视为工作副本发生本地修改。版本库中的所有属性都应用于障碍路径。
用第一列字符"E" 来报告障碍路径。
参数解释:
使用"--set-depth"选项设置此操作目标的工作副本之新深度。
有效选项:
-r[--revision] ARG : ARG (一些命令也接受ARG1:ARG2范围)
版本参数可以是如下之一:
NUMBER 版本号
'{' DATE '}' 在指定时间以后的版本
'HEAD' 版本库中的最新版本
'BASE' 工作副本的基线版本
'COMMITTED' 最后提交或基线之前
'PREV' COMMITTED的前一版本
-N[--non-recursive] : 过时;尝试--depth=files 或 --depth=immediates
--depth ARG : 受深度参数ARG("empty","files","immediates",或"infinity") 约束的操作
--set-depth ARG : 设置工作副本的新深度为ARG("exclude","empty","files","immediates",
或"infinity")
-q[--quiet] : 不打印信息,或只打印概要信息
--diff3-cmd ARG : 使用 ARG 作为合并命令
--force : 强制操作运行
--ignore-externals : 忽略外部项目
--changelist ARG : 只能对修改列表 ARG 成员操作
[aliases: --cl]
--editor-cmd ARG : 使用 ARG 作为外部编辑器
--accept ARG : 指定自动解决冲突动作
('postpone','base', 'mine-conflict',
'theirs-conflict','mine-full', 'theirs-full',
'edit', 'launch')
全局选项:
--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]
示例:
更新文件 “svn update > update.txt”
作用:从版本库签出工作副本。
使用语法: checkout URL [@REV]... [PATH]
如果指定 REV,那么它确定了从 URL 首先查找的版本。
如果省略路径参数,则URL 最末尾的目录名作为目标目录名。如果指定多个 URL,
则依次将其签出到 PATH的子目录中,子目录名就是 URL 最末尾的目录名。
如果使用了"--force" 选项,在工作副本中未版本控制的障碍路径,不会自动导
致签出失败。 如果障碍路径与版本库中的对应路径类型相同(文件或目录),它将成
为受版本控制的路径,但是内容不改变。它意味着障碍路径的孩子,如果也是障碍路
径,那么也会受版本控制。对于障碍路径中的文件,如果与版本库内的不同,将视为工
作副本发生本地修改。版本库中的所有属性都应用于障碍路径。
参数解释:cmd下运行 "svn help checkout" 以获取帮助。
有效选项:
-r[--revision] ARG : ARG (一些命令也接受ARG1:ARG2范围)
版本参数可以是如下之一:
NUMBER 版本号
'{' DATE '}' 在指定时间以后的版本
'HEAD' 版本库中的最新版本
'BASE' 工作副本的基线版本
'COMMITTED' 最后提交或基线之前
'PREV' COMMITTED的前一版本
-q[--quiet] : 不打印信息,或只打印概要信息
-N[--non-recursive] : 过时;尝试--depth=files 或 --depth=immediates
--depth ARG : 受深度参数ARG("empty","files","immediates",或"infinity") 约束的操作
--force : 强制操作运行
--ignore-externals : 忽略外部项目
全局选项:
--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]
示例:
(1)用户名登陆checkout
svn checkout %_SVN_URL_% --username %_USER_% --password %_PASSWORD_% %_MODEL_%%_ENV_%
(2) checkout,注意一些全局变量的使用
echo svn checkout %_ACTION_% %_SVNROOT_%/%_PARAM_%/SetUp/Model/%_MODEL_%/Setting
if not exist Setting\.svn (
svn checkout %_ACTION_% %_SVNROOT_%/%_PARAM_%/SetUp/Model/%_MODEL_%/Setting Setting --non-interactive
) else (
svn switch %_ACTION_% %_SVNROOT_%/%_PARAM_%/SetUp/Model/%_MODEL_%/Setting Setting --non-interactive
)
svn revert Setting -R
作用: 将工作副本文件恢复到原始版本(恢复大部份的本地修改)。
使用语法: revert PATH...
注意: 本子命令不会访问网络,它解除任何冲突的状态。
但是,它不恢复被删除的目录。
参数解释:
有效选项:
--targets ARG : 传递文件 ARG 内容为附件参数
-R[--recursive] : 向下递归,与--depth=infinity 相同
--depth ARG : 受深度参数ARG("empty","files","immediates",或"infinity") 约束的操作
-q[--quiet] : 不打印信息,或只打印概要信息
--changelist ARG : 只能对修改列表 ARG 成员操作
[aliases: --cl]
全局选项:
--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]
svn revert Setting -R
作用: 从版本库中删除文件和目录。
使用语法: 1、delete PATH...
2、delete URL...
1、每个 PATH 指定的项目会被调度到下次提交时从版本库删除。除非给出
--keep-local 参数,工作副本中没有提交的文件和目录会被立即删除。
如果 PATH 是未版本控制或者已修改的项目,或者包含这些项目,那么仅当
给出 --force 参数时这些项目才会被删除。
2、每个 URL 指定的项目会通过立即提交从版本库中删除。
参数解释:
有效选项:
--force : 强制操作运行
-q[--quiet] : 不打印信息,或只打印概要信息
--targets ARG : 传递文件 ARG 内容为附件参数
-m[--message] ARG : 指定日志信息ARG
-F[--file] ARG : 从文件ARG读取日志信息
--force-log : 强制校验日志信息资源
--editor-cmd ARG : 使用 ARG 作为外部编辑器
--encoding ARG : 将ARG的值视为字符编码
--with-revprop ARG : 在新版本设置版本属性 ARG
使用格式 name[=value]
--keep-local : 在工作副本中保留路径
全局选项:
--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]
示例:
svn del -m "Remove STABLE" %_CL_URL_%
作用: 在工作副本或版本库中复制数据,保留历史。
使用语法: copy SRC[@REV]... DST
当复制多个源时,它们作为 DST 的子节点增加, DST 必须是目录。
SRC和 DST 可以是工作副本路径(WC)或版本库地址(URL):
WC -> WC: 复制和调度增加(包含历史)
WC -> URL: 立即提交工作副本到版本库
URL -> WC: 检出 URL 到工作副本,调度增加
URL -> URL: 完全服务器端复制;一般用于分支和标签
所有 SRC 必须是同一类型。
警告:为了与旧版本的 Subversion 兼容,使用两个工作副本复制(WC -> WC)的
操作不会与版本库通信。同样地,在缺省情况下,不能从复制源到目的地传播合
并跟踪信息。
参数解释:
有效选项:
-r[--revision] ARG : ARG (一些命令也接受ARG1:ARG2范围)
版本参数可以是如下之一:
NUMBER 版本号
'{' DATE '}' 在指定时间以后的版本
'HEAD' 版本库中的最新版本
'BASE' 工作副本的基线版本
'COMMITTED' 最后提交或基线之前
'PREV' COMMITTED的前一版本
-q[--quiet] : 不打印信息,或只打印概要信息
--ignore-externals : 忽略外部项目
--parents : 创建中间目录
-m[--message] ARG : 指定日志信息ARG
-F[--file] ARG : 从文件ARG读取日志信息
--force-log : 强制校验日志信息资源
--editor-cmd ARG : 使用 ARG 作为外部编辑器
--encoding ARG : 将ARG的值视为字符编码
--with-revprop ARG : 在新版本设置版本属性ARG
使用格式 name[=value]
全局选项:
--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]
示例:
svn copy -m "%_MEMO_%" %_CL_PATH_% %_CL_URL_%
这里使用了copy来创建分支文件夹,文件夹名称为变量%_MEMO_%,路径为是在%_CL_PATH_%下,这个方式和commit类似,会自动更新SVN版本号。