oXygen Comparison and Merge Tools

In large teams composed either of developers or technical writers, the use of a shared
repository is essential. It is common for numerous authors to be working on the same file
simultaneously.

In this case, finding what has been modified in your files and folders can often be
difficult. To help you with this, oXygen includes diff tools for
comparing files and comparing directories.

These are powerful and easy-to-use tools that will do the job fast and thoroughly.
With the possibilities of comparison and merging, it is easy to manage multiple
changes.

Compare Files Tool

The comparison of a pair of files is done by opening them in two
editors arranged in a side by side layout. You can edit both files and the differences
are refreshed when you save the modified documents. You can also compare XML fragments,
without selecting files, by copying and pasting them into either side of the comparison
tool. While comparing files or fragments, you can merge differences by using the toolbar
buttons or actions from the contextual menu. File comparison and merging actions can
also be performed on files inside ZIP-based archives.

The differences are presented in a graphical format and scrolling
is synchronized so that the matches are kept close to one another. Guiding areas are
painted between the two files or fragments to allow you to easily locate the
corresponding differences. An overview ruler helps track the changes.

Three-Way Comparisons

oXygen also includes a three-way comparison feature to help you solve
conflicts and merge changes between multiple modifications. It is especially helpful
for teams who have multiple authors editing and committing the same documents. It
provides a comparison between a local change, another change, and the original base
revision.

Diff Algorithms

The comparison solution includes a variety of XML diff
algorithms. It includes an XML Accurate algorithm for precise
compare, a XML Fast algorithm for speed at the expense of some
accuracy, and three algorithms that rely on the file structure (line-based,
word-based, and character-based). It also includes a syntax-aware algorithm that
provides comparison results for all file types and XML fragments that are recognized
by oXygen. Any algorithm can be used to perform differences on request, but the
oXygen Compare Files tool also offers an automatic selection that chooses the most
appropriate algorithm based on the content and size of the files or fragments.

The XML diff algorithms are designed to help you with your specific needs for
comparing XML documents or fragments. This means that you can specify whether or not
namespaces, prefixes, namespace declarations, processing instructions, comments,
CDATA, DOCTYPE, the order of attributes, or even text elements should be
ignored.

The comparison operations do not interfere with the user interface. They display
progress information and allow the user to cancel them at any time. The multiple
levels of comparison support allows you to go deeper into found differences and see
what is actually modified, and all of the multiple levels include full merging
support.

Word Level Comparison

When there are modifications between the source and the target file or fragment,
you can see them in detail, at word level, by selecting the Show Word Level
details option from the Compare menu.

Character Level Comparison

You can also see modifications in even deeper detail, at character level, by
clicking the Show Character Level detail button from the Compare
menu.

Both the Compare Files and Compare Directories tools are available as stand-alone
applications and are also integrated into the oXygen Tools menu.

Compare Directories Tool

The directory comparison results are presented using a tree-like
view. The directories that contain differences in their file structure are expanded
automatically, allowing you to focus directly on the differences. You can merge the
content of the directories by using the copy actions from the toolbar, or you can
examine the content of the files. The comparison and merging actions can also be
performed inside ZIP-based archives (ZIP, JAR, ODF, OOXML).

When performing a comparison between directories/archives, the files can be compared
by using several methods:

by timestamp - Only the file date and size are compared (fastest
method). This is useful when the directories contain a lot of different files.

by content - The file content is compared using the default diff
algorithm. Depending on the selected algorithm, the appropriate options will be
considered (such as ignoring the white-spaces, ignoring the namespace prefixes,
etc.)

binary comparison - The file content is compared byte to byte. This
is faster than the by content method, but should especially be used
for differences of importance.

Filters are included to help specify the set of files that will be used during the
comparison operation. For example, you can choose to see only the differences from XML
or XSL file types. By default, the comparison is made on all file types.

If a file or a folder exists only on one side of the compared directories, the name
of the file or folder will be colored blue and marked with an "X". If a file exists in
both directories but the content is different, the name of the file will be colored red
and marked with a "not-equal" sign.

Compare Images

By double-clicking on a line that contains image files, a Compare Images dialog
box will be displayed. The dialog box displays the images in both sides, scaled to fit
the available area in the view. You can use contextual menu actions to scale the
images to fit in the view. This is useful for visual comparison.

The supported image types are: GIF, JPG / JPEG, PNG, BMP.

3-Way Directory Comparison and Merging Changes from Multiple Sources

The Compare Directories Against a Base (3-way) tool allows you to
perform three-way comparisons on directories to help you identify and merge changes
between multiple modifications of the same directory structure. It is especially helpful
for teams that have multiple authors contributing documents to the same directory
system. It offers information about conflicts and changes, and includes actions to
easily merge, accept, overwrite, or ignore changes to the directory system.