Ashwin Nanjappa
Ashwin Nanjappa

Reputation: 78568

How to patch on Windows?

Given a (source) patch file, what's the easiest way to apply this patch on the source files under Windows?

A GUI tool where I can visually compare the unchanged-changed source lines would be great.

Upvotes: 23

Views: 26590

Answers (5)

Frederik
Frederik

Reputation: 727

You can install patch it via Cocolatey:

choco install patch

Upvotes: 0

Nicolas Thery
Nicolas Thery

Reputation: 2448

A good way to apply a patch file under Windows OS is using Git. As I understood, Git is a version control solution like SVN.

Here is a guideline to apply a patch :

  • First of all, download the latest release of the Windows Git Edition here : GIT
  • With the cmd prompt, change directory to the patch file and files to patch
  • Now you can use the following command line :
git apply --ignore-space-change --ignore-whitespace --whitespace=nowarn file.patch

Upvotes: 21

VonC
VonC

Reputation: 1329902

Not that since Git 2.3.3 (March 2015), you can use git apply --unsafe-paths to use git apply outside a git repo.

See commit 5244a31 by Junio C Hamano (gitster)

"git apply" was not very careful about reading from, removing, updating and creating paths outside the working tree (under --index/--cached) or the current directory (when used as a replacement for GNU patch).

The documentation now includes:

--unsafe-paths:

By default, a patch that affects outside the working area (either a Git controlled working tree, or the current working directory when "git apply" is used as a replacement of GNU patch) is rejected as a mistake (or a mischief).

When git apply is used as a "better GNU patch", the user can pass the --unsafe-paths option to override this safety check.
This option has no effect when --index or --cached is in use.

So if you have git installed, git apply could help, even outside of any git repo.

Upvotes: 7

Philip Reynolds
Philip Reynolds

Reputation: 9402

WinMerge is awesome.

http://winmerge.org/

Upvotes: -2

SCdF
SCdF

Reputation: 59428

Patch for Windows is what you're looking for.

Upvotes: 6

Related Questions