| Comparing and Merging Files with GNU diff and patch by David MacKenzie, Paul Eggert, and Richard Stallman Paperback (6"x9"), 120 pages ISBN 0954161750 RRP £12.95 ($19.95) "Well packaged... the quality of information is excellent" --- Linux User and Developer Magazine (Issue 36, Feb 2004) Get a printed copy>>> |
11.1 Tips for Patch Producers
To create a patch that changes an older version of a package into a
newer version, first make a copy of the older and newer versions in
adjacent subdirectories. It is common to do that by unpacking
tar archives of the two versions.
To generate the patch, use the command ‘diff -Naur old
new’ where old and new identify the old and new
directories. The names old and new should not contain any
slashes. The -N option lets the patch create and remove
files; -a lets the patch update non-text files; -u
generates useful time stamps and enough context; and -r lets
the patch update subdirectories. Here is an example command, using
Bourne shell syntax:
diff -Naur gcc-3.0.3 gcc-3.0.4
Tell your recipients how to apply the patches. This should include
which working directory to use, and which patch options to
use; the option ‘-p1’ is recommended. Test your procedure by
pretending to be a recipient and applying your patches to a copy of
the original files.
See section 11.3 Avoiding Common Mistakes, for how to avoid common mistakes when generating a patch.
| ISBN 0954161750 | Comparing and Merging Files with GNU diff and patch | See the print edition |