(diff.info.gz) Generating Smaller Patches
Info Catalog
(diff.info.gz) Avoiding Common Mistakes
(diff.info.gz) Making Patches
Generating Smaller Patches
==========================
The simplest way to generate a patch is to use `diff -Naur' (
Tips for Patch Producers), but you might be able to reduce the size
of the patch by renaming or removing some files before making the
patch. If the older version of the package contains any files that the
newer version does not, or if any files have been renamed between the
two versions, make a list of `rm' and `mv' commands for the user to
execute in the old version directory before applying the patch. Then
run those commands yourself in the scratch directory.
If there are any files that you don't need to include in the patch
because they can easily be rebuilt from other files (for example,
`TAGS' and output from `yacc' and `makeinfo'), exclude them from the
patch by giving `diff' the `-x PATTERN' option ( Comparing
Directories). If you want your patch to modify a derived file
because your recipients lack tools to build it, make sure that the
patch for the derived file follows any patches for files that it
depends on, so that the recipients' time stamps will not confuse `make'.
Now you can create the patch using `diff -Naur'. Make sure to
specify the scratch directory first and the newer directory second.
Add to the top of the patch a note telling the user any `rm' and
`mv' commands to run before applying the patch. Then you can remove
the scratch directory.
You can also shrink the patch size by using fewer lines of context,
but bear in mind that `patch' typically needs at least two lines for
proper operation when patches do not exactly match the input files.
Info Catalog
(diff.info.gz) Avoiding Common Mistakes
(diff.info.gz) Making Patches
automatically generated byinfo2html