手册

附录 B. 自动化 TortoiseMerge

目录

TortoiseMerge 命令行开关

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

TortoiseMerge 命令行开关

大多数开关需要额外的资讯,例如路径或一些其他字符串。在这些情况下,在开关后附加一个 ':',并在其后放置字符串/路径。例如:

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

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

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

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

如果未为三向比较设置此项,则 TortoiseMerge 将询问用户将结果保存在哪里。

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

/mergednamemerged 文件的名称。这将在视图标题中显示,而不是文件路径。
/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 主页