Getting Started > Choosing Your Work Environment > Visual Difference/Visual Merge Interfaces
Visual Difference/Visual Merge Interfaces
The Visual Difference tool is a graphical application that allows you to compare a working file and a member revision, or two revisions. It offers two-way differencing of revisions where differences are highlighted for you.
The Visual Merge tool is a graphical application that allows you to compare revisions and perform edits and merges. It offers three-way differencing of revisions and highlights conflicts. It features in-line editing, differencing, and conflict resolution. It is similar to Visual Difference in look and feel, but includes many advanced features used for complicated merging tasks.
The three-way differencing in Visual Merge allows you to compare the two revisions selected for merging, the Merge From revision and the Merge Base revision, as well as the working file or Merge To file for the member. The revisions are highlighted for differences and conflicts allowing you to choose the blocks you want to merge from each revision and save to the Merge Result file.
Conflicts, if they exist, are highlighted and appear with a red flag next to the line number. With all three files available for comparison in Visual Merge, you can decide which of the conflicting blocks you want to incorporate into the merge result, or you can use the editing utilities to insert blocks from each revision into the merge result.
Visual Difference Application Window
Visual Merge Application Window
The Visual Difference and Visual Merge interfaces include the following user interface components:
Menu Bar
The menu bar is located directly below the title bar. There are four menus in the menu bar: File, Edit, View, and Help. The list of available menu operations varies depending on the function you are performing.
Immediately below the menu bar is a toolbar that provides easy access to the most commonly used operations. Toolbar functions are carried out by clicking the appropriate toolbar button. Point to a button to display a tooltip that contains a description for that button.
In Visual Difference, toolbar buttons become available and unavailable for use depending on the mode you are in. For more information, see “Visual Difference Modes”.
Located immediately below the toolbar buttons are display controls that change what displays in the view panes. These controls are also available in the View menu.
Difference Blocks is a list containing all of the difference blocks in the revisions, including the type of difference (change, insertion, deletion, edit, and conflict), and the line numbers.To move to a particular difference block, select the block from the Difference Blocks list. The selected difference block displays.
Ignore Whitespace ignores tab and white space throughout the lines in the revisions.
Ignore Case ignores the type case when comparing the revisions.
Under the View menu, the following controls are also available:
Synchronize Scrolling causes all of the panes to scroll simultaneously. This control is enabled by default.
Ignore Blanks ignores white space at the end of lines, and changes it to white space elsewhere in the line.
View Panes
The view panes display the revisions you are comparing. Line numbers display for navigation (line numbers can be removed through preferences). Scrolling in the view panes is synchronized.
Merge From is the revision or working file from which blocks are merged.
Merge Out From (Visual Merge only) is the revision from which blocks are merged to remove changes. This pane only displays when resolving a merge after reverting a change package. For such merges, documentation referencing the Merge From view pane applies to the Merge Out From view pane.
Merge To is the revision or working file that is used as the basis for the Merge Result file.
Merge Base (Visual Merge only) is the revision you want to use as the base for calculating differences against the Merge From to be applied to the Merge To.
Merge Result is the file that blocks are merged into, and can be edited and saved to contain the output of the merge. A number immediately to the left of the line numbers displays to indicate which revision the block originated from: Merge From (1) or Merge To (2), for the Merge mode of Visual difference, or Merge From (1), Merge Base (2) or Merge To (3) for Visual Merge.
In the Merge mode for Visual Difference, and in Visual Merge, there are two different layouts for the view panes, vertical layout and split layout. You can change the layout through the View menu.
In the Merge mode of Visual Difference, the vertical layout displays Merge From and Merge Result side-by-side. By clicking View Merge To, you can view the Merge From and the Merge To side-by-side. The split layout displays three revisions for comparison: Merge From and Merge To side-by-side and Merge Result in the pane below them.
In Visual Merge, the vertical layout displays three revisions side-by-side: Merge From, Merge Base, and Merge To. The split layout displays in four panes for comparison. The Merge From, Merge Base and Merge To revisions are displayed side-by-side, and the Merge Result displays below them. In split layout, you can hide the Merge Base pane by clicking View > Merge Base.
You can copy one or more contiguous rows of text from any of the view panes.
The title of the active pane is bold. The active pane contains the file that is used when you request to display a specific line of code or when you search for a specific text string. For more information on these operations, see “Displaying a Specific Line of Code” and “Finding Text”.
The currently differenced block of text is indicated by two thick lines, above and below the block. The currently differenced block corresponds to the block selected in the Difference Blocks field.
Within each block of text, the change within each line of text is highlighted in a different color.
The colors used for highlighting the different types of changes are controlled by your preferences. For more information, see “Setting Preferences”.
Shortcut Menu
Visual Merge and Visual Difference support standard shortcut menus. To display the menu of actions you can perform, select a line in any pane and right-click.
The available actions displayed in the shortcut menu depend on whether you right-click within the Merge From, Merge To, Merge Base (Visual Merge only), or Merge Result view panes. In Visual Difference, the available actions also depend on whether you right-click within an expanded or collapsed block. For more information on expanded and collapsed blocks, see “Hiding Unchanged Text in Visual Difference”.
Shortcut Keys
For some operations, shortcut keys are provided. Shortcut keys appear on menus opposite their operation names.
In Visual Difference, the operations available in a given menu depend on which mode you are working in. For information on modes, see “Visual Difference Modes”
Status Bar
The status bar provides a short summary of the difference blocks for each revision. It shows conflicts, insertions, deletions, and changes with a number indicating how many of each exist in each file. For example, the summary, Inserted: 0/2/5, means that in the Merge From there are zero insertions, while in the Merge Base there are 2 insertions, and in the Merge To there are 5 insertions.
Visual Difference Modes
Hiding Unchanged Text in Visual Difference
Displaying a Specific Line of Code
Finding Text
Printing Views
Setting Preferences