python学习-SVN常用命令


1、update(up)
作用: 将版本库的修改合并到工作副本中。
使用语法: 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”
2、checkout(co)
作用:从版本库签出工作副本。
使用语法: 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
[python] 
svn checkout %_SVN_URL_% --username %_USER_% --password %_PASSWORD_% %_MODEL_%%_ENV_%  
 
(2) checkout,注意一些全局变量的使用
[python] 
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  
 
3、revert
作用: 将工作副本文件恢复到原始版本(恢复大部份的本地修改)。
使用语法: 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]
 
示例:
[python]  
svn revert Setting -R  
 
4、delete (del, remove, rm)
作用: 从版本库中删除文件和目录。
使用语法: 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]
示例:
[python]  
svn del -m "Remove STABLE" %_CL_URL_%  
 
5、copy(cp)
作用: 在工作副本或版本库中复制数据,保留历史。
使用语法: 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]
示例:
[python]  
svn copy -m "%_MEMO_%" %_CL_PATH_% %_CL_URL_%  
 
这里使用了copy来创建分支文件夹,文件夹名称为变量%_MEMO_%,路径为是在%_CL_PATH_%下,这个方式和commit类似,会自动更新SVN版本号。
 
 
 
 
 
 

相关内容

    暂无相关文章

评论关闭