When comparing Kdiff3 vs CodeCompare, the Slant community recommends Kdiff3 for most people. In the question“What are the best folder/file compare/diff tools for either OSX, Linux or Windows?” Kdiff3 is ranked 3rd while CodeCompare is ranked 10th. The most important reason people chose Kdiff3 is:
For modern version control systems, 3way merge support is a basic requirement, but many other open source diff viewers do not adequately handle 3way merges.
Specs
Ranked in these QuestionsQuestion Ranking
Pros
Pro Supports 3 way merges
For modern version control systems, 3way merge support is a basic requirement, but many other open source diff viewers do not adequately handle 3way merges.
Pro Free and open source
KDiff3 is completely free to download and use. It's also open source released under the GPL.
Pro Can compare directories
It is able to compare whole directory trees.
Pro Supports editing files directly
In addition to comparing two files it also allows you to edit the merge result right in place.
Pro Diff by character not by lines
On comparing two files, difference is shown by characters; not by lines.
Pro The UI is customizable
Allow customizing colors regardless of user/system theme.
Pro Supports manual code aligning
With selecting code in one window and hitting Ctrl+Y, then selecting some other code in second window and also hitting Ctrl+Y you can manually align the code.
Pro Preprocessing before calculating differences
There are options that may pre-process compared files before Kdiff3 actually do a comparison - to ignore for example automatically generated dates and/or revision numbers added by commit hooks.
Pro Context menu shortcut
You can right-click a folder/file and the options:
- Save <file> for later
- Compare with
will be available, making launching KDiff3 really convenient.
Pro Graphical showing of where code is added or removed
It does not add a blank line in the other code-pane to show where code was added or deleted. It simply draws a line to show point out its location.
Pro Three-way comparison and automatic merging
Three comparison panes with horizontal and vertical layouts
- Integrates with version control systems as the merging tool for conflicting file revisions
- Non-conflicting changes are merged automatically
- Merging conflicts are highlighted
- One-click conflict resolution with a mouse button
Pro Supports comparing folders
Can diff entire folders.
Pro Integrated into Visual Studio
Can be used either as a stand-alone product or as the built in diff/merge tool for Visual Studio.
Pro Clear overview that marks only the changes, not every line with a change
Most compare tools mark every changed line with colour, making the code just a mess with thousands of coloured lines, while all that might be changed is a sign/character on each line. Code Compare draws boxes around each changed segment and highlights only the real change with a colour.
Pro Offers free version and paid for version
You get a lot more if you pay for the pro version.
Cons
Con Cannot do inline diffs
Comparison of 2 files is always side-by-side and there's no option for inline views. Overall a rather poor and confusing UI in general.
Con Confusing GUI
4 sub-windows (when you really only need 3), a lot of different colors and even more confusing result-window. No links what has changed between versions and and the result. It clearly shows it's dated or rather outdated. Great if you ever need to do a command line merge, otherwise it sucks.
Con No precise editing of the compared files
Precise work line-after-line is not possible. Only a version after the automated merge-step is editable, but not the two files separately.
Con No longer supported by Homebrew for MacOS
Cannot be installed easily on Mac as of Aug 2019.
Con Problems when files have different number of lines
For example, if you add 3 lines: A, B and C locally but on the other change there are only A and C, Kdiff3 will work out that A was added, then it says that B conflicts with C but adds C again anyway.
Con Slow for large files
Con No image compare
Compare is text based.
Con No longer supported
Problematic with Visual Studio 2022. Semantic code comparison (its main selling point) does not support newer language variations.
Con Does not support custom comment markings
Some compilers use ";" to specify in-line commenting. But as that is not a common method, all added comments are marked as new code. So it becomes difficult to find changes in the functionality of the code.
Con Does not support move-detection
Very few programs detect move of blocks of code. Most just show deleted and added instead.
Con Free version is limited
Whereas there is a free version, it is missing a lot of great features that you're forced to pay for if you want.