Two diff formats are available: unified and comparison. Each format has its own advantages, depending on how you are interested in seeing the difference in the data between each profile.
Unified diff format will be familiar to anyone who has done software development on a UNIX platform, especially anyone who has worked with Subversion, because Subversion uses unified diff as its default diff format. For example, consider this profile comparison output in diff format:
--- cudev_rh90 (version 9, revision 108) +++ cudev_rh90 (version 8, revision 98) @@ -139,7 +139,6 @@ <accounts> <setrootpw/> <addgroup gid="1050">ops<s/addgroup> - <addgroup gid="1060">localadm<s/addgroup> <addgroup gid="1150">qa<s/addgroup> <addgroup gid="1250">is<s/addgroup> <addgroup gid="9000">dev<s/addgroup>
Comparison diff format is a format that attempts to show the entire document, if possible, and show exactly in the document, down to the character level, where differences occur. When one file does not exist, as in the case when one profile version has no installed packages recorded, comparison diff is your only option, since a unified diff cannot be created from a single input source.
The following table will help you understand the output of the comparison diff format. Each line of a comparison diff begins with a two-character code:
Code | Meaning |
---|---|
'- ' | line unique to sequence 1 |
'+ ' | line unique to sequence 2 |
' ' | line common to both sequences |
'? ' | line not present in either input sequence |
Comparing different versions of the same profile is essentially a "special case" of the general profile comparison feature. The interface and functionality provided are identical.