When comparing P4Merge vs Meld, the Slant community recommends P4Merge for most people. In the question“What are the best diff tools for Git?” P4Merge is ranked 2nd while Meld is ranked 3rd. 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 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 Cross-platform with a good Mac port
P4Merge works on Windows, Linux and OS X.
Pro Comparing two or more different folders is supported
Meld allows users to compare two or three different folders for differences. But if a user wants to 'zoom in' and compare files contained in these folders, Meld gives you the ability to do so and launch file comparisons between files contained in different folders or in the same folder.
Pro Supports editing files directly
In addition to comparing two files it also allows you to edit them right in place. What's more, the diffs are updated automatically.
Pro Free and open source
Meld is freely available on Linux, Windows and OSX (through MacPorts, Fink or Brew).
It's also open source and distributed under the GNU General Public License (GPL).
Pro Three way comparisons
You can compare up to three different files for differences. Plus you can edit files from the comparison view and the diff will automatically update.
Pro Supports some simple version control actions
Meld supports the major version control systems (Git, Mercurial, Subversion and Bazaar). You can launch file comparisons between different versions to see what parts changed before commiting.
Simple version control actions are also supported and possible. For example: commit/update/add/remove/delete files.
Through the GNOME Translation project and the translators that have worked for it, Meld is available in multiple languages. You can check if your language is supported in the translation statistics page.
If you can't find your language or if your language translation is unfinished and you want to help, you can do so by joining the GNOME Translation Project.
Pro Easy to use and visually appealing
Stragihtforward and you don't need to read tutorials to use it. Just click and select and you instantly see how the difference and merges are connected to eachother.
3 sub- windows, instead of 4, which reduces the mess during merge and let you see more of the surrounding files rather than just 5 lines.
Pro Simple GUI
Pro Fast on Linux
Relatively fast on Linux.
Con Directory comparison is not supported
With P4Merge it's impossible to compare two different directories to find differences.
Con Program opens slow on Windows
Con Slow on large files
While larger files are supported, they can take a long time to load. (20,000 lines+)
Con Very slow mac OS port
Con Not having a base value to reference can make merging less certain
Con No Explorer context menu integration
In Windows, there is no option to right-click and compare files easily.
Con No official OSX Support
Some attempts have been made to port, but nothing easy or fully working.
Con Missing contextual command line options
Not all contextual elements are exposed to the cli. Specifically the ability to follow our not follow symlinks, but also things like file system metadata parsing. These options and others can only be toggled via the gui's settings window.