手册

附录 B. 自动化 TortoiseMerge

目录

TortoiseMerge 命令行开关

TortoiseMerge 可以使用命令行参数启动,以避免必须通过 打开 对话框来自己选择文件。如果您想从另一个应用程序使用 TortoiseMerge,这也很有用。

TortoiseMerge 命令行开关

大多数开关需要附加信息,例如路径或其他字符串。在这些情况下,在开关后追加一个 ':',并将字符串/路径放在后面。示例

/base:"c:\folder\my base file.txt"
      

表 B.1. 可用命令行选项列表

命令描述
/? 显示一个包含最重要的命令行开关的对话框。
/help? 相同。
/base 指定在三向 diff 中使用的 基准 文件。这是正在进行 diff 的文件的共同祖先,尽管它没有显示在单独的窗口中。对于双向 diff,这是左侧文件。
/basename 基准文件的名称。这将显示在视图标题中,而不是文件路径。对于三向 diff,它将显示在视图标题的工具提示中。
/basereflectedname 用于 editorconfig 模板的名称。
/theirs 指定在三向 diff 中使用的 对方 文件,显示在左侧窗格中。
/theirsname 对方文件的名称。这将显示在视图标题中,而不是文件路径。
/theirsreflectedname 用于 editorconfig 模板的名称。
/mine 指定在三向 diff 中使用的 我的 文件,显示在右侧窗格中。对于双向 diff,这是右侧文件。
/minename 我的文件的名称。这将显示在视图标题中,而不是文件路径。
/minereflectedname 用于 editorconfig 模板的名称。
/merged

指定在 diff 中使用的结果 合并 文件。这是保存合并/冲突解决结果的文件路径。

如果在三向 diff 中未设置此项,则 TortoiseMerge 将询问用户要将结果保存到哪里。

如果未为双向差异设置此选项,则 TortoiseMerge 将自动使用右侧视图中显示的文件路径作为保存路径。

/mergedname 合并文件的名称。这将显示在视图标题中,而不是文件路径。
/mergedreflectedname 用于 editorconfig 模板的名称。
/patchpath 应用补丁的路径。如果未设置此路径,则 TortoiseMerge 将尝试自行查找路径以匹配补丁文件中的路径,但这可能需要很长时间
/saverequired 如果指定,则强制 TortoiseMerge 在退出之前询问是否保存文件,即使用户未修改文件。
/saverequiredonconflicts 如果指定,则强制 TortoiseMerge 在发现冲突后询问是否保存文件,即使用户未修改文件。
/patchoriginal 要修补的原始文件的名称。用于视图标题。
/patchpatched 修补后的结果文件的名称。用于视图标题。
/diff 要应用于目录的补丁/差异文件的路径。
/oneway 强制 TortoiseMerge 以单向视图启动,而不是用户在设置中指定的视图。
/reversedpatch 切换指定两个文件的左右视图以进行差异比较。
/createunifieddiff 创建两个文件的统一差异文件(补丁文件),这两个文件使用 /origfile:"path_to_original_file"/modifiedfile:"path_to_modified_file" 指定。目标路径使用 /outfile:"path_to_resulting_patchfile" 设置。如果未设置 /outfile,则会显示文件保存对话框,以便用户可以选择保存补丁文件的位置。注意:如果设置了 /createunifieddiff,则所有其他参数将被忽略。
/line 指定加载文件后要跳转到的行号。
/readonly 防止编辑文件。这意味着 TortoiseMerge 的编辑功能被禁用。
/nosvnresolve 防止 TortoiseMerge 在保存文件后询问是否将文件标记为已在 SVN 中解决。


您也可以在命令行中提供简单的文件名,以与其他差异程序兼容。在此简化形式中,命令行是

TortoiseMerge BaseFilePath MyFilePath [ TheirFilePath ]
      

如果给出两个文件,它们将相互比较。如果给出三个文件,则第一个文件将被视为 BASE 文件,另外两个文件将与它进行三向差异比较。

TortoiseSVN 主页