How to patch on Windows?

2019-02-04 08:30发布

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.

标签: windows patch
4条回答
该账号已被封号
2楼-- · 2019-02-04 09:00

WinMerge is awesome.

http://winmerge.org/

查看更多
趁早两清
3楼-- · 2019-02-04 09:02

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.

查看更多
小情绪 Triste *
4楼-- · 2019-02-04 09:13

Thanks to Macke, 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

Simple isn't it ?

Thank you Macke

查看更多
我想做一个坏孩纸
5楼-- · 2019-02-04 09:16

Patch for Windows is what you're looking for.

查看更多
登录 后发表回答