缺省比较工具按如下所示分别在 UNIX 和 Windows 的 ccm.properties 文件中进行指定。
此外,还可在 ccm.properties 文件中设置编码规则,以便比较的项目以正确编码显示,如下所示:
// Command to compare projects on UNIX and its checkstatus.
ccm.cli.tools.compare.project.unix=%ccm_home/bin/util/cc_dff %ccm_home %{encoding[null='CP1252']} %outfile %project1 %project2^M
// Command to compare projects on Windows and its checkstatus.
ccm.cli.tools.compare.project.windows="%ccm_home\\\\bin\\\\util\\\\cc_dff.bat" "%ccm_home" %{encoding[null='CP1252']} %outfile %project1 %project2
通过 ccm_diff 命令的第二个参数,可以为要比较的项目指定编码。语法 “%{encoding[null='CP1252']}” 的解释如下:
如果项目使用 encoding_rules 属性指定工作区编码,请将该编码用于比较。否则,请使用 CP1252 编码。(请参阅File encodings以获取有关 encoding_rules 属性的讨论。)
可以为此参数指定除 CP1252 以外的缺省编码。例如,以下语法指示,如果未对项目指定编码,那么使用 UTF8 编码:
ccm.cli.tools.compare.project.windows="%ccm_home\\\\bin\\\\util\\\\cc_dff.bat" "%ccm_home" %{encoding[null='UTF8']} %outfile %project1 %project2
以下语法指出一律使用 CP1252 编码:
ccm.cli.tools.compare.project.windows="%ccm_home\\\\bin\\\\util\\\\cc_dff.bat" "%ccm_home" CP1252 %outfile %project1 %project2
有效编码包括 CP1252、UTF8、BIG5、eucJP、EUC-KR、SJIS 和 GB18030。
进行比较的项目和祖代项目必须采用相同编码。
例如,在中文数据库中,可以为 project 类型设置以下编码规则:
Server-encoding: GB18030
Unix-wa-encoding: GB18030
Windows-wa-encoding: GB18030
假设使用 ccm_diff 命令的缺省编码参数,然后以 GB18030 编码来调用 CLI 和 GUI 比较工具。
或者,如果站点仅包含中文数据库,那么可以按如下更改缺省比较命令,从而在 project 类型上无需 encoding_rules 属性。
ccm.cli.tools.compare.project.windows="%ccm_home\\\\bin\\\\util\\\\cc_dff.bat" "%ccm_home" %{encoding[null='GB18030']} %outfile %project1 %project2
ccm diff [-vc|-versioncompare -p|-project
project_spec1 [project_spec2]