WinMerge is an Open Source visual text file differencing and merging tool for Win32 platforms. WinMerge can compare directories and files and present differences in easy to understand and handle format.
WinMerge is highly useful for determining what has changed between project versions, and then merging changes between versions. WinMerge can be used as external differencing/merging tool or as standalone application.
In addition WinMerge has a lot of helping and supporting features making comparing and synching/merging as easy and useful as possible. Several programming languages and other fileformats are syntax highlighted.
WinMerge is not an hex-editor. WinMerge can only inform user if binary files are different or identical, but WinMerge does not allow merging or editing binary files.
Goal of WinMerge development is to make comparing and synch/merge of directories and files easy and fast. While maintaining maximum reliability. Easiness reduces user errors. Version 2.2 was already good and version 2.4 still improves in many areas.
Please note that WinMerge is not freeware, but it is GPL licenced.
There are three kind of versions available in downloads page.
Stable versions are recommended for most users. If you are unsure about what version to use - use latest stable version. Stable versions have even second number, for example 2.0, 2.2, 2.4
Beta versions are for people who want to test latest features and improvements done after last stable version. Beta versions are not so extensively tested as stable versions are and probably have some bugs. Beta versions have odd second number, for example 2.1 and 2.3
Experimental versions are snapshot releases from version control (CVS). They have all the latest features and improvements. Some features may still be buggy and/or incomplete. These releases are made available to allow users to try out the current code without needing to compile, and participate in development discussions concerning new and changing features. We also appreciate any help testing the current code. Use with care and enable backups! And please report bugs you find using these builds, it really helps with WinMerge development!
Open discussion forum is the fastest way to get help. Please be patient, it may take some time anybody answers.
If you have found a bug, please submit it as a bug report. Please attach as much information as you can, at least the version number of WinMerge you are using. If you can, attach also configuration log which you can see from menu -> Good information in bug report means better change for bug to be fixed faster.
![]() |
Include version number in bug reports. Version number can be checked from -> dialog. |
WinMerge source codes are available in downloads page and from public CVS server. We welcome everybody to download the sources, study them and alter them. If you find (and fix) bugs, improve something etc, please submit your changes back to us as patches and help improve this product!
While WinMerge development has been fast in last two years, all this work is done by people in their spare time. Nobody gets paid for improving WinMerge. We try to fix bugs as we find them or somebody reports them to us. We really try - we use WinMerge too. But there is absolutely no promises for new features. We always appreciate any help with WinMerge, be it testing, documenting, translating or coding.
As mentioned above, we look for help in many areas, not just coding. Translations, documentation and testing are important too.
Developer pages are good start if you want to help with development.
Developers-forum is best place to discuss about development. If you are interested in helping with WinMerge development, let us know. If you want to fix one of our bugs or implement a new feature, let us know.