Diff (from <oXygen/> XML Diff)

Syncro SVN Client offers both directory and file comparison, six different diff algorithms to choose from for file comparison and multiple levels of comparison.

The complete diff solution includes two XML diff algorithms (XML Fast and XML Accurate), one Syntax Aware algorithm that gives very good results on all file types known by Syncro SVN Client and three all-purpose algorithms: line based, word based and character based. Any algorithm can be used to perform differences on request, but Syncro SVN Client offers also an automatic selection of the algorithm, selecting the most appropriate one based on the files' content and size.

The Diff preferences panel is opened from menu OptionsPreferences+Diff

Figure 5.11. The Diff preferences panel

The Diff preferences panel

Default algorithm

Select from the list the algorithm that will be used as default when you open the Compare files dialog

  • Auto makes an automatic selection of the diff algorithm, based on the files' content and size.

  • Characters computes the differences at character level.

  • Words computes the differences at word level..

  • Lines computes the differences at line level.

  • Syntax aware : for the file types known by Syncro SVN Client , this algorithm computes the differences taking into consideration the syntax of the documents.

  • XML Fast is designed for XML documents. It works better than XML Accurate on large files, but it is less precise.

  • XML Accurate is designed for XML documents. It works best on smaller XML files and it is most precise.

[Note]Note

XML Fast and XML Accurate work for XML documents. If you'll try to use them for other types of files, you'll be prompted with the message "content not allowed in prolog"

Ignore whitespaces

This option, if checked, allows the diff algorithm to ignore the whitespaces. Ignoring whitespace means that before the strings are compared they are first normalized and then the whitespace at the beginning and the end of the strings is trimmed.

LCS - Maximum number of differences

This option allows you to specify the maximum number of differences between your documents that you might be interested to see (using the Longest Common Subsequence Algorithm). If the number of differences is larger than the one specified here, you'll be notified by the message "Too many differences".

XML Diff Options

This set of options allows you to specify the types of differences that will be ignored in the XML Fast and XML Accurate algorithms:

  • in node / type:

    • Processing instructions

    • Comments

    • CDATA

    • DOCTYPE

    • Text

  • in namespaces / prefixes

    • Namespaces

    • Prefixes

    • Namespace declarations

  • in the attributes order

Merge adjacent differences

If checked, it considers adjacent differences as one and they are presented in this way in the side-by-side editors. If unchecked, every difference is represented separately.

Mark end tags as different for modified elements

If checked, end tags of modified elements are presented as differences.

Ignore expansion state for empty elements

If checked, empty elements in both expansion states are considered matched.

For the directories comparison you can specify the criterion for the component files comparison and a default file filter.

Directories Comparison

Look in archives:

If checked, the Diff directories comparator will treat archives known by Syncro SVN Client as directories and show differences also between files inside them.

Compare files by:

The methods used to compare the files in diff directories.

  • Content - The files content is compared using the current diff algorithm. Also all the xml diff options are used at comparison.

  • Binary Compare - The files are compared at byte level.

  • Timestamp (last modified date/time) - The files timestamp is compared.

Default file filter

specifies the file filter that is set by default in the File filter combo box of the Compare Directories window each time this window is opened from the Tools menu.