WinMerge is an open source file differencing and merging tool, particularly useful for developers.

At its simplest you can use the program to compare two text files, visually highlighting the differences so it's easy to see what's changed. (Support for Unicode, and Windows, Unix and Mac text file formats mean it should work with just about any regular text file.)

WinMerge also includes a capable editor, with syntax highlighting, line numbers, word wrap and more.

The program is able to compare entire folders of files, too, making WinMerge ideal for identifying what's changed between versions of a project. And it can then merge these modifications with other files, updating them for you as required.

WinMerge 2.16.2 changes include:

  File compare:
  - Bugfix: Edit > Replace > All, Undo: should undo all (sf.net #2113)
  - Bugfix: Save As: default directory should be file's original
    directory (sf.net #2163)
  - Bugfix: Strings with embedded 0 bytes are handled incorrectly (sf.net
    #2187)
  - Bugfix: Removed word level merge support due to unstable behavior
  - Bugfix: Menu item "File->File Encoding" moves main window (Bitbucket #150)
  - Bugfix: Crash when maximizing MDI child window
  - bugfix: Crash when failed to load file
  - Add syntax highlight for Lua (Bitbucket #114)
  Folder compare:
  - Bugfix: Compare results refresh incorrectly after deletions (sf.net #2217)
  Archive Support:
  - Upgraded to 7-zip 19.00
  Tab bar:
  - Improve icon display at 120DPI
  Image compare:
  - Bugfix: Zoom In/Out shortcuts don't update zoom level in location
    pane (Bitbucket #149)
  - Zoom In/Out menu items for image compare (Bitbucket #148)
  Open dialog:
  - Allow quoted filenames in "Select Files or Folders" (sf.net #1240,
    GitHub #137)
  Manual:
  - Some tweaks for the manual (Bitbucket PR #35)
  Installer:
  - Bugfix: Gibberish language during installation (Bitbucket #147)
  Translations:
  - Update Catalan translation (Bitbucket PR #29)
  - Update Italian translation (Bitbucket PR #32)
  - Update Lithuanian translation (Bitbucket PR #33)
  - Update Simplified Chinese translation (Bitbucket PR #34)

Verdict ratingsratingsratingsratingsratings

An excellent tool that helps you track and control changes across the versions of a software project