'\" t .\" Title: interdiff .\" Author: .\" Generator: DocBook XSL Stylesheets vsnapshot .\" Date: 23 June 2009 .\" Manual: Man pages .\" Source: patchutils .\" Language: English .\" .TH "INTERDIFF" "1" "23 June 2009" "patchutils" "Man pages" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" http://bugs.debian.org/507673 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- .\" disable hyphenation .nh .\" disable justification (adjust text to left margin only) .ad l .\" ----------------------------------------------------------------- .\" * MAIN CONTENT STARTS HERE * .\" ----------------------------------------------------------------- .SH "NAME" interdiff \- show differences between two diff files .SH "SYNOPSIS" .HP \w'\fBinterdiff\fR\ 'u \fBinterdiff\fR [[\-p\ \fIn\fR] | [\-\-strip\-match=\fIn\fR]] [[\-U\ \fIn\fR] | [\-\-unified=\fIn\fR]] [[\-d\ \fIPAT\fR] | [\-\-drop\-context=\fIPAT\fR]] [[\-q] | [\-\-quiet]] [[\-z] | [\-\-decompress]] [[\-b] | [\-\-ignore\-space\-change]] [[\-B] | [\-\-ignore\-blank\-lines]] [[\-i] | [\-\-ignore\-case]] [[\-w] | [\-\-ignore\-all\-space]] [[\-\-interpolate] | [\-\-combine] | [\-\-flip]] [\-\-no\-revert\-omitted] \fIdiff1\fR \fIdiff2\fR .HP \w'\fBinterdiff\fR\ 'u \fBinterdiff\fR {[\-\-help] | [\-\-version]} .SH "DESCRIPTION" .PP \fBinterdiff\fR creates a unified format diff that expresses the difference between two diffs\&. The diffs must both be relative to the same files\&. For best results, the diffs must have at least three lines of context\&. .PP To reverse a patch, use /dev/null for \fIdiff2\fR\&. .PP To reduce the amount of context in a patch, use: .sp .if n \{\ .RS 4 .\} .nf interdiff \-U1 /dev/null patchfile .fi .if n \{\ .RE .\} .PP Since \fBinterdiff\fR doesn\*(Aqt have the advantage of being able to look at the files that are to be modified, it has stricter requirements on the input format than \fBpatch\fR(1) does\&. The output of GNU diff will be okay, even with extensions, but if you intend to use a hand\-edited patch it might be wise to clean up the offsets and counts using \fBrecountdiff\fR(1) first\&. .PP Note, however, that the two patches must both be relative to the versions of the same original set of files\&. .PP The diffs may be in context format\&. The output, however, will be in unified format\&. .SH "OPTIONS" .PP \fB\-h\fR .RS 4 Ignored, for compatibility with older versions of interdiff\&. This option will go away soon\&. .RE .PP \fB\-p\fR \fIn\fR, \fB\-\-strip\-match=\fR\fB\fIn\fR\fR .RS 4 When comparing filenames, ignore the first \fIn\fR pathname components from both patches\&. (This is similar to the \fB\-p\fR option to GNU \fBpatch\fR(1)\&.) .RE .PP \fB\-q\fR, \fB\-\-quiet\fR .RS 4 Quieter output\&. Don\*(Aqt emit rationale lines at the beginning of each patch\&. .RE .PP \fB\-U\fR \fIn\fR, \fB\-\-unified=\fR\fB\fIn\fR\fR .RS 4 Attempt to display \fIn\fR lines of context (requires at least \fIn\fR lines of context in both input files)\&. (This is similar to the \fB\-U\fR option to GNU \fBdiff\fR(1)\&.) .RE .PP \fB\-d\fR \fIPATTERN\fR, \fB\-\-drop\-context=\fR\fB\fIPATTERN\fR\fR .RS 4 Don\*(Aqt display any context on files that match the shell wildcard \fIPATTERN\fR\&. This option can be given multiple times\&. .sp Note that the interpretation of the shell wildcard pattern does not count slash characters or periods as special (in other words, no flags are given to \fBfnmatch\fR)\&. This is so that \(lq*/basename\(rq\-type patterns can be given without limiting the number of pathname components\&. .RE .PP \fB\-i\fR, \fB\-\-ignore\-case\fR .RS 4 Consider upper\- and lower\-case to be the same\&. .RE .PP \fB\-w\fR, \fB\-\-ignore\-all\-space\fR .RS 4 Ignore whitespace changes in patches\&. .RE .PP \fB\-b\fR, \fB\-\-ignore\-space\-change\fR .RS 4 Ignore changes in the amount of whitespace\&. .RE .PP \fB\-B\fR, \fB\-\-ignore\-blank\-lines\fR .RS 4 Ignore changes whose lines are all blank\&. .RE .PP \fB\-z\fR, \fB\-\-decompress\fR .RS 4 Decompress files with extensions \&.gz and \&.bz2\&. .RE .PP \fB\-\-interpolate\fR .RS 4 Run as \(lqinterdiff\(rq\&. This is the default\&. .RE .PP \fB\-\-combine\fR .RS 4 Run as \(lqcombinediff\(rq\&. See \fBcombinediff\fR(1) for more information about how the behaviour is altered in this mode\&. .RE .PP \fB\-\-no\-revert\-omitted\fR .RS 4 (For interpolation mode only) When a file is changed by the first patch but not by the second, don\*(Aqt revert that change\&. .RE .PP \fB\-\-help\fR .RS 4 Display a short usage message\&. .RE .PP \fB\-\-version\fR .RS 4 Display the version number of interdiff\&. .RE .SH "EXAMPLES" .PP Basic usage: .sp .if n \{\ .RS 4 .\} .nf interdiff \-z 3\&.2pre1\&.patch\&.gz 3\&.2pre2\&.patch\&.gz .fi .if n \{\ .RE .\} .PP Reversing a patch: .sp .if n \{\ .RS 4 .\} .nf interdiff patch /dev/null .fi .if n \{\ .RE .\} .PP Reversing part of a patch (and ignoring the rest): .sp .if n \{\ .RS 4 .\} .nf filterdiff \-i file\&.c patchfile | \e interdiff /dev/stdin /dev/null .fi .if n \{\ .RE .\} .SH "BUGS" .PP There are currently no known bugs in interdiff; but there are some caveats\&. If you find a bug, please report it (along with a minimal test case) to Tim Waugh \&. .PP There are some sets of patches in which there is just not enough information to produce a proper interdiff\&. In this case, the strategy employed is to revert the original patch and apply the new patch\&. This, unfortunately, means that interdiffs are not guaranteed to be reversible\&. .SH "SEE ALSO" .PP \fBcombinediff\fR(1) .SH "AUTHORS" .PP \fBTim Waugh\fR <\&twaugh@redhat.com\&> .RS 4 Package maintainer .RE .PP \fBMichael K\&. Johnson\fR <\&johnsonm@redhat\&.com\&> .RS 4 Original man page contributor .RE