DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH
 

(diff.info.gz) Reversed Patches

Info Catalog (diff.info.gz) Changed White Space (diff.info.gz) Imperfect (diff.info.gz) Inexact
 
 Applying Reversed Patches
 -------------------------
 
    Sometimes people run `diff' with the new file first instead of
 second.  This creates a diff that is "reversed".  To apply such
 patches, give `patch' the `-R' or `--reverse' option.  `patch' then
 attempts to swap each hunk around before applying it.  Rejects come out
 in the swapped format.
 
    Often `patch' can guess that the patch is reversed.  If the first
 hunk of a patch fails, `patch' reverses the hunk to see if it can apply
 it that way.  If it can, `patch' asks you if you want to have the `-R'
 option set; if it can't, `patch' continues to apply the patch normally.
 This method cannot detect a reversed patch if it is a normal diff and
 the first command is an append (which should have been a delete) since
 appends always succeed, because a null context matches anywhere.  But
 most patches add or change lines rather than delete them, so most
 reversed normal diffs begin with a delete, which fails, and `patch'
 notices.
 
    If you apply a patch that you have already applied, `patch' thinks
 it is a reversed patch and offers to un-apply the patch.  This could be
 construed as a feature.  If you did this inadvertently and you don't
 want to un-apply the patch, just answer `n' to this offer and to the
 subsequent "apply anyway" question--or type `C-c' to kill the `patch'
 process.
 
Info Catalog (diff.info.gz) Changed White Space (diff.info.gz) Imperfect (diff.info.gz) Inexact
automatically generated byinfo2html