TextDiffMerge preferences category

The TextDiffMerge preferences category controls the appearance of textual operations in IBM® Rational® Rhapsody® DiffMerge, which includes the external textual diff/merge tool.

The external textual diff/merge tool is provided by the IBM Rational ClearCase® ClearDiff and ClearDiffMrg tools. The Rational ClearCase ClearDiff is the "silent" version of the tool and the Rational ClearCase ClearDiffMrg is the interactive tool.

IBM Rational Rhapsody searches for the preferred external, textual diff/merge tool in this sequence:

To learn how to change preferences, see Changing preferences.

The following table lists the TextDiffMerge preference settings and their default values.

Table 1. TextDiffMerge preferences
Preference name Description Default value
BaseAwareAutoMergeInvocation Specifies how to start the external textual diff/merge tool supporting base-aware (three-unit) detection of triviality of textual difference and three-unit automatic merging. For Windows: "$OMROOT\etc\ccrc_diff\win32\ccrc_cleardiff.exe" -out $output -base $sourceBase -abo -qui $source1 $source2

For Linux: "$OMROOT/etc/ccrc_diff/linux/ccrc_cleardiff" -abort -quiet -out $output -base $sourceBase $source1 $source2

For the meaning of the keywords, see the DiffInvocation preference.

BaseAwareAutoMergeableAttributes Specifies a list of attribute names, which contain text values and can be merged automatically. The value of the attribute can be also All (meaning that all attributes can be textually merged) and None (meaning that no automatic textual merge should be done). The default value, ItsBody, determines that only the implementation for the methods or/and operations will be merged automatically when possible. For Windows and Linux: ItsBody
BaseAwareDiffInvocation Specifies how to start the external textual diff/merge tool supporting a base-aware comparison and merging in Base Aware Diff mode. For Windows: "$OMROOT\etc\ccrc_diff\win32\ccrc_cleardiffmrg.exe" -base $sourceBase $source1 $source2

For Linux: "$OMROOT/etc/ccrc_diff/linux/ccrc_xcleardiff" -base $sourceBase $source1 $source2 -out $output

For the meaning of the keywords, see the DiffInvocation preference.

BaseAwareDiffMergeInvocation Specifies how to start the external textual diff/merge tool supporting base-aware comparison and merging in Base Aware Merge mode. For Windows and Linux: $BaseAwareDiffInvocation -out $output

The keyword $BaseAwareDiffInvocation means the command to start the external textual three‑unit comparison in Rational Rhapsody DiffMerge.

BaseAwareTextDiffMergeEnabled Determines whether a base-aware (three-unit) textual diff/merge tool is available to be started. For Windows and Linux: Checked (check box selected)
DiffInvocation Specifies how to start the external textual diff/merge tool in Diff mode. For example, if the value is cleardiffmrg.exe $source1 $source2, Rational Rhapsody DiffMerge calls the ClearDiffMrg tool. For Windows: "$OMROOT\etc\ccrc_diff\win32\ccrc_cleardiffmrg.exe" $source1 $source2

For Linux: "$OMROOT/etc/ccrc_diff/linux/ccrc_xcleardiff" -base $sourceBase $source1 $source2 -out $output

The keywords:

  • $OMROOT means the location of the Share subdirectory under the Rational Rhapsody installation
  • $source1 means the text file containing left value of compared attribute
  • $source2 means the text file containing right value of compared attribute
  • $sourceBase means the text file containing compared value from the base.
DiffMergeInvocation Specifies how to start the external textual diff/merge tool in the Merge mode. For example, if the value is cleardiffmrg.exe $source1 $source2 -o $output,
Rational Rhapsody DiffMerge calls the ClearDiffMrg tool.
For Windows: $DiffInvocation -out $output

For Linux: $DiffInvocation

The keywords:

  • $DiffInvocation means the command to start the external textual two‑unit comparison in Rational Rhapsody DiffMerge.
  • $output means the text file that the merged result will be written to (is replaced by value of the MergeOutput preference).
MergeOutput Specifies the text file path and name that the merging result will be written to. For example, if the value is c:\temp\out.txt, Rational Rhapsody DiffMerge looks for the merging result in the out.txt file in the c:\temp folder. For Windows: $temp\out.txt

For Linux: $temp/out.txt

The keyword $temp means the folder specified in the operational system to store temporary files.

Note: The metaclass General::DiffMerge and its preferences (MergeOutput, DiffInvocation, and DiffMergeInvocation) were removed in Version 4.1 of the Rhapsody product. Therefore, if you previously overrode those properties in your site.prp file, Rational Rhapsody ignores them (they will have no effect) unless you move them under DiffMerge::TextDiffMerge.

Feedback