在DOS使用SVN之执行命令整理(TortoiseProc.exe)
2012-08-21 10:48 Andrew.Wangxu 阅读(19248) 评论(1) 编辑 收藏 举报注:以下整理文本来源于官方的帮助文档,由于个人英语水准太那个啥。。。。大部分借助了谷歌翻译。
TortoiseSVN因为所有的命令都是通过命令行参数控制,你可以自动批处理脚本或从其它程序(例如你喜欢的文本编辑器)启动特定的命令和对话框。
TortoiseSVN命令
TortoiseSVN的GUI程序被称为TortoiseProc.exe
。
所有的命令都指定参数 /command:ABCD,
ABCD
是必须的命令名。大多数这些命令需要至少一个路径作为参数,如 /path:“一些路径”
。
由于一些命令需要一个目标路径的列表(例如提交一些特定的文件)/path 参数可以接收多个路径,由一个*
字符分隔。
TortoiseSVN使用临时文件在shell扩展和主程序之间传递多个参数。从TortoiseSVN 1.5.0或更高版本, / notempfile
参数是过时的并且没有必要将它添加了。
进度对话框用于提交,更新和更多的命令通常保持打开状态的命令后,直到用户按下按钮完成。这是可以改变的,在设置对话框中选中相应的选项。但是,使用此设置将关闭进度对话框,不管你的批处理文件或从TortoiseSVN右键菜单中启动命令。
要指定一个不同的位置配置文件,使用的参数 /configdir:“路径为 config 目录”
。这将覆盖默认的路径,包括任何注册表设置。
要关闭进度对话框的命令结束的情况下自动设置永久性的参数,你可以传递/ closeonend
参数。
-
/ closeonend:0
不自动关闭对话框 -
/ closeonend:1
,会自动关闭,如果没有错误 -
/ closeonend:2
会自动关闭,如果没有发生错误和冲突 -
/ closeonend:3
会自动关闭,如果没有错误,冲突和合并 -
/ closeonend:4
会自动关闭,如果没有错误,冲突和合并
下表列出了所有可以使用TortoiseProc.exe命令行访问的命令。如上所述,这些应中使用的形式 /command:abcd
。在表中 /command
前缀被省略以节约空间。
命令 | 描述 |
---|---|
:about | 显示关于对话框。如果直在dos中输入TortoiseProc 也将直接显示关于对话框。 |
:log |
打开日志对话框。 /path 指定的文件或文件夹的日志显示。附加的选项可以设置了/startrev:XXX, /endrev:XXX, /strict,启用“停止复制”复选框,/merge 启用“包括合并版本”复选框,/findstring :“过滤器字符串” ,/findtext 的强制过滤器使用文本,而不是正则表达式,或 /findregex 强制使用正则表达式过滤器,而不是简单的文本搜索。并且 /findtype:X 其中X是一个从0到511之间的数字。这些数字的总和以下选项:
如果 /outfile:path 为指定文件,写入到该文件的日志对话框关闭时,将选中版本的。都写在相同的格式是用来指定在合并对话框订正订正。 |
:checkout | 打开“检出”对话。 /path 指定目标目录,/url 指定检出的URL。如果您指定键 /blockpathadjustments,自动检测路径被阻断调整。 /revision:XXX 指定的修订检查。 |
:import | 打开的导入对话框。 / path 指定要导入的数据的目录。您也可以指定/logmsg的的开关,通过预定义的日志信息导入对话框。或者,如果你不想通过在命令行上的日志信息,的使用/ logmsgfile:路径,路径指向一个文件,其中包含的日志信息。 |
:update |
更新工作的SVN路径。如果该选项 |
:commit | 打开提交对话框。/path 指定了目标路径或需要提交的文件的列表。您也可以指定/ logmsg 的的 开关,通过预定义的日志信息,在提交对话框。或者,如果你不想通过在命令行上的日志信息,的使用 /logmsgfile:路径 ,路径 点到一个文件中包含的日志信息。要预先填入bug的ID的情况下,你已经设置了集成bug跟踪系统正确,你可以使用 /BUGID:“bug的ID在这里” 做到这一点。 |
:add | 添加/ 版本控制的路径 中的文件。 |
:revert | 还原的工作副本的本地修改。/path 告诉哪些项目恢复。 |
:cleanup | 清洁起来中断或中止操作,并解除工作副本的 /path 。 |
:resolve | 标记 /path 解决一个指定文件的冲突 。如果 /noquestion 是给定的,那么解决的是做了不要求用户干涉,如果它真正应该让用户来干涉该操作。 |
:repocreate | 创建一个版本库中 /path |
:switch | 打开选项对话框。/path 指定目标目录。 |
:export | 的工作副本导出 到另一个目录/路径 。/path 指向一个没有版本控制目录,对话框会询问出口的目录 /path 的URL 。 |
:dropexport | 在/ path的工作副本导出到指定的目录 /droptarget。这种出口不使用的出口对话框,而是直接执行。选项 /overwrite 指定覆盖现有文件,无需用户确认,和选项 /autorename 的规定,如果文件已经存在,导出的文件自动重命名,以避免覆盖。 |
:merge | 打开合并对话框。 / path指定了目标目录。 |
:copy | /tag 对话框。/path 是分支 /tag 从工作副本。/URL 的目标URL。您也可以指定 /logmsg 的 开关,通过预定义的日志信息的分支/标签对话框。或者,如果你不想通过在命令行上的日志信息,的使用/logmsgfile:路径 ,路径 点到一个文件中包含的日志信息。 |
:settings | 打开设置对话框。 |
:remove | 删除的文件 /path 从版本控制的路径 。 |
:rename | 重命名文件 /path 。一个对话框,询问该文件的新名称。为了避免类似的文件重命名一个步骤的问题,通过 /noquestion |
:diff | 开始在TortoiseSVN设置的外置的区别程序。/path 指定的第一个文件。如果的选项 /PATH2 设置的,那么diff程序开始,这两个文件。如果 /PATH2 被省略,则差异之间进行文件 /path 和它的基础。显式设置的版本号使用了 /startrev:XXX 和 /endrev:XXX 。 如果/ PATH2 没有设置,那么差异是由第一个责怪的文件的修订。 |
:showcompare |
根据不同的URL和修订比较,可以显示出一个统一的diff(如果
|
:conflicteditor | 开始的冲突工具,在TortoiseSVN的设置有冲突的文件 /path 的正确文件。 |
:relocate | 打开重定位对话框。/path 指定重新定位的工作副本路径。 |
:help | 打开帮助文档。 |
:repostatus | 打开检查修改对话框。/path 指定的工作副本的目录。 |
:repobrowser | 启动库浏览器“对话框中,指向的URL的工作副本的URL地址 /path 指向工作文件路径 。另外一个选项 /REV:XXX 可以用来指定修订版本库浏览器显示。如果 /REV:XXX 省略,则默认为HEAD。如果一个URL,/projectpropertiespath:路径 /WC 路径 点 从哪里阅读和使用项目属性指定的路径。
|
:ignore | 添加到忽略列表中的所有目标 /path ,即增加了使用svn:忽略 对这些文件的属性。 |
:blame |
打开追溯对话框指定的文件 如果选项 如果该选项 选项 |
:cat | 保存文件的工作副本或URL路径 /path /savepath:路径 中指定的位置 。修订 /revision:XXX 。这可以被用来获取某个特定的版本的文件。 |
:createpatch | 创建一个补丁文件 /path 中指定的路径 。 |
:revisiongraph | 显示给定的路径 /path 中的版本变化图 。 |
:lock | 锁定一个文件或文件 /path 在一个指定的目录中的所有文件 。'锁定'对话框,使用户可以输入注释的锁。 |
:unlock | 解锁一个文件或文件 /path 在一个指定的目录中的所有文件 。 |
:rebuildiconcache | 重建windows的图标缓存。仅使用Windows图标被破坏的情况下。(这是无法避免的)的一个副作用的是,桌面上的图标会重新组织。为了抑制的消息框,,通过 /noquestion 。 |
:properties | 显示的属性对话框中指定的路径 /path 。 |
示例:
TortoiseProc.exe /command:commit /path:"c:\svn_wc\file1.txt*c:\svn_wc\file2.txt" /logmsg:"test log message" /closeonend:0 TortoiseProc.exe /command:update /path:"c:\svn_wc\" /closeonend:0 TortoiseProc.exe /command:log /path:"c:\svn_wc\file1.txt" /startrev:50 /endrev:60 /closeonend:0