How to visualize or format a diff / patch file? [c

2019-03-14 06:49发布

问题:

I have a patch file (unified diff), like the output from svn diff, git diff, or diff -u .... I want to review it, but the unified diff format - especially with many files & changes - is hard on my eyes.

How can I get a nicely-formatted diff view from the patch file? I don't have the files themselves, only the diff, so I can't use all the regular diff tools.

So far my 2 best tactics are:

  1. Load the diff in gvim and get some syntax highlighting
  2. Paste the diff into a Trac wiki in a #!diff-formatted section and click "preview" - this creates an awesome diff view:
{{{
#!diff
<unified diff here>
}}}

Are there desktop tools that can do this? Is there a way to persuade kdiff3 / diffmerge / p4merge / etc. to visualize the patch file? Something that replicates Trac's visualization would be great as well.

EDIT: bonus points for Windows support as well, preferably with an installer or a pain-free installation.

回答1:

Try using kompare - http://www.caffeinated.me.uk/kompare/. It should do the job.

EDIT: Also, check out the list of file comparison tools here: http://en.wikipedia.org/wiki/Comparison_of_file_comparison_tools - have a look at the column "Patch preview" in one of the tables.



回答2:

Have a look at idiff



回答3:

Not a Windows solution, but if you're on Mac OS X, PatchViewer (http://appledeveloper.com.au/products/patchviewer/) will do what you're after.

(Disclaimer: I am the author of PatchViewer.)