When comparing P4Merge vs WinMerge, the Slant community recommends P4Merge for most people. In the question“What are the best diff tools for Git?” P4Merge is ranked 2nd while WinMerge is ranked 6th. The most important reason people chose P4Merge is:
P4Merge is free of charge.
Ranked in these QuestionsQuestion Ranking
P4Merge is free of charge.
Pro 3 way merge support
P4Merge presents merge information in 4 panes - BASE, LOCAL, REMOTE and MERGE_RESULT.
Pro Cross-platform with a good Mac port
P4Merge works on Windows, Linux and OS X.
Pro Also has image diffing
For those who are working in both text based source code or files, as well as images, its nice to have the diff functionality of both present in the same product.
Pro Detects minimal changes without having a common ancestor
After a merge sometimes you have conflicts. You can resolve them by using a merge tool. You can run
git mergetool --tool-help to get more details about what tools are supported.
You will get an output like the following
git mergetool --tool=<tool> may be set to one of the following:
p4merge tortoisemerge vimdiff vimdiff2 vimdiff3
The following tools are valid, but not currently available:
araxis bc bc3 codecompare deltawalker diffmerge diffuse ecmerge emerge gvimdiff gvimdiff2 gvimdiff3 kdiff3 meld opendiff tkdiff winmerge xxdiff
Some of the tools listed above only work in a windowed environment. If run in a terminal-only session, they will fail.
Pro Lightweight, quick startup
Binary is less than 3 MB, so it starts quickly
Pro Compare folders and files
Can show what files has been changed in a folder, allows comparing files in tabs.
Pro In line comparison
Can show differences within a line.
Can filter out files for folder comparison, lines for file comparisons, with regular expressions.
Options also allow to ignore whitespace differences, white lines, case change, line-ending changes, etc.
Pro Free & Open source
Winmerge is a free and open source tool.
Pro Good navigation
Keyboard shortcuts (and toolbar buttons) to navigate to next (previous) difference, side panel shows a map of the files with changed lines and allows to jump to a given place.
Pro Good detection of moved lines
Detects when a block of lines has been moved in the file and shows the relation.
Pro File edition
You can quickly copy changed lines (or files in folder comparison) in both directions with keyboard shortcuts. You can edit the files as well, with syntax highlighting of some languages.
Pro Good shell integration
Select two files and compare them. Alternatively, select one file, navigate elsewhere, select the other file to compare.
Also supports drag'n'drop of files / folders from Explorer.
History of past comparisons.
Con Directory comparison is not supported
With P4Merge it's impossible to compare two different directories to find differences.
Con Windows only
It's only available for Windows. No Mac or Linux versions available. It is possible to run in Linux via WINE, although a bit unstable.
Con Development is stopped
No update for years; last official release was made in 2013.
Two forks are still in active development as of 2017.
As of 2015 it was on par with the historical version, and has additional features such as showing only differences and a 64-bit version.
Winmerge-v2-jp: https://bitbucket.org/sdottaka/winmerge-v2 and https://github.com/sdottaka/winmerge-v2
Adds support for 3-way merge, diff-only view, and improvements to the diff algorithm among other additions. Has a 64-bit version.
An 'official' list of forks is maintained (despite the url) at http://www.geocities.co.jp/SiliconValley-SanJose/8165/unofficial_winmerge_nightly_builds.html
Con No 3-way merge
Cannot merge 3 files, can do only comparisons by pairs.
Makes it unsuitable for merging operations, still useful to compare two versions in the history.