Comparing Binary Files

Merge binary comparisons provide a way to compare binary (typically non-text and non-image) data files. If you wish to see the differences between files at a byte level, this is the best type of comparison to use. Merge can interpret and display the bytes that make up the files in various ways to give, for example, a hexadecimal, decimal or floating-point view of the file data.

Information If you haven’t already, spending a few moments browsing the Instant Overview of File Comparison and Merging will help you quickly become familiar with Merge file comparisons. It might also be helpful to review the The Ribbon and the Toolbar: Making the Most of the Merge User Interface on Different Versions of Windows topic.

Performing a comparison

You can open a new binary comparison tab by clicking the New binary comparison New binary comparison button button in the quick access toolbar (above the ribbon), the ribbon itself (or the drop-down menu for the leftmost ribbon item), or the drop-down menu attached to the New text comparison New text comparison button toolbar button in the old-style Merge interface.

A new binary comparison window

Two empty areas where the compared files will be displayed take up the majority of the window. Above each file pane is an entry field that you can use to enter the path to a file that you want to compare.

To compare two files, you can type the paths of two files into the entry fields or use the buttons on the right-hand end of the entry fields to choose files to compare.

The Browse Browse button button opens a file-browsing window and the History List History list button button displays a drop-down list of files that you have recently compared. If you hold down the Ctrl key when selecting a file from the drop-down list, Merge will fill the filename fields for the other file panels with their corresponding historical values.

If there are other versions of the file named in the entry field available for comparison in an SCM system repository, the Versions Versions button button displays a list of these other versions. If this button is not enabled, check the relevant options on the Application and Credentials options pages.

To perform the comparison once you have chosen the two files to compare, click the Start or recompare Start or recompare button button in the ribbon or toolbar, or press the Enter key while one of the filename entry fields has focus.

You can also drag and drop files from Windows Explorer onto the filename entry fields or onto the file panes.

The binary comparison display

Two sample files (test1.txt and test2.txt) are provided in the Merge installation directory. The following screenshot shows the results of a binary file comparison between these two files.

Results of comparing test1.txt and test2.txt

Changes between the two files are highlighted with colours and linking lines. Linking lines in the centre panel of the file comparison window connect related changes to show exactly how the files are related. You can modify the colours and fonts used in the comparison window by using the controls in the Fonts and Colours options page.

A summary of the number of changes that were found between the compared files is shown in the status bar at the bottom of the main Merge application window. The caret’s byte offset is also displayed.

Layout controls

You can use the Two-way (horizontal) Two-way comparison (horizontal) button or Two-way (vertical) Two-way comparison (vertical) button buttons in the ribbon or toolbar (or the F11 and F12 keys) to change the layout of the files within the file comparison window so that the compared files are displayed one above the other or side-by-side (the default).

There are many options that you can set to customize how Merge compares and displays files. There are help topics that will enable you learn how to customize Merge so that it produces the best results for you.

Three-way file comparisons

In addition to two-way file comparison, the Professional Edition of Merge enables you to compare (and, for text files, merge) three files. Please see the Three-Way File Comparison and Merging topic for more information. The Professional Edition also supports the automatic merging of text files.

Binary comparison controls

You can change how the binary comparison is performed and displayed using the controls in the strip along the bottom of the binary comparison window.

Columns

This control determines the number of columns of data elements shown in the file panels. A value of 0 or Auto will cause as many columns as will fit to be shown.

Display as

Use the values in this drop-down list to choose a display style for the data shown in the comparison. You can view the data in hexadecimal or decimal (big or little endian) or as floating point values. Some display values are only appropriate for certain choices in the Format drop-down (for example, displaying as Floating Point doesn’t make sense for a 2-byte Integer format). The comparison display will show NaN (not a number) if the comparison format isn’t suitable for the selected Display as choice.

Format

Use this drop-down list to choose the size and type of data elements in the compared files. You can choose to format the data as 1, 2, 4 or 8-byte integers, or 32-bit or 64-bit floating point values. The default element size is a byte. Click the Apply button to apply changes to this control.

Search size

The value contained within this control affects the amount of work Merge will perform in order to find a minimal set of changes between the compared files. Its effect is greater on large files. Smaller values typically result in quicker comparisons at the expense of accuracy; larger values result in slower comparisons with greater accuracy. Smaller search sizes will never miss a change, but might not therefore give you the best set of changes. Click the Apply button to apply changes to this control.

Navigation

As you scroll one file up and down using its scroll bar, the other file is scrolled so that the two files remain aligned in the centre of the display. The centre point marker (a line of small indentations in the centre of the linking lines panel) indicates the point at which Merge tries to keep related parts of the files aligned. You can temporarily prevent Merge from keeping both files aligned by holding down the Ctrl key while scrolling. When you release Ctrl, the files will snap back into alignment.

The small Previous change and Next change Previous/Next Change buttons buttons below the scroll bars can be used to jump to the previous or next change.

Overview strip There are thin overview strips next to the vertical scroll bars at the left and right edges of the file comparison window. These contain markings to indicate the position of changes within the compared files. You can quickly navigate to a change by clicking on the marks in the strip.

You can use the cursor keys to navigate within a file after clicking within it to give it keyboard focus. The following navigation shortcut keys are also available:

  • Ctrl+Page Up (or F7) moves the editing cursor to the previous change.
  • Ctrl+Page Down (or F8) moves the editing cursor to the next change.
  • Ctrl+ and Ctrl+ moves the editing cursor left and right in word steps.
  • Ctrl+Home and Ctrl+End moves the editing cursor to the beginning or end of the file.
  • Ctrl+G displays a window that you can use to navigate to a specific line number.

For a full list of keyboard shortcuts, see File Comparison Keyboard Shortcuts.

Mouse navigation

Merge supports mice with wheels. If you have a three-button mouse, you can click within a file panel with the middle mouse button to enter a panning mode. The file will scroll in the direction you move the mouse. To stop panning, click the middle mouse button again. If your mouse has a wheel, you can use it to scroll up and down within the active file. If your mouse or keyboard has backwards and forwards buttons, you can use them to navigate to the previous or next change.

Bookmarks and comments

As you are comparing or editing files, you might want to set bookmarks to enable you to return to locations of interest later on. Press Ctrl+F2, or click Toggle bookmark Toggle bookmark button in the ribbon or toolbar, to toggle a bookmark on or off on the current line. To navigate between bookmarks, press F2 or Shift+F2, or use the Next bookmark Next bookmark button and Previous bookmark Previous bookmark button buttons in the ribbon or toolbar.

Comments can be added to bookmarks, making it easy to note important information or to record a question. To edit a bookmark’s comment, right-click the bookmark and choose the Edit Comment menu item. Bookmark comments are shown as tooltips when you hover the mouse pointer over a bookmark.

Information Bookmarks and comments are included when you create an HTML comparison report or save a comparison for archival or team collaboration. They are therefore a useful tool for asking questions or making notes in a comparison that will later be emailed to other team members for review.