Next: dopatch, Up: Introducing Changesets
mkpatch
computes a changeset describing the differences between two
trees. The basic command syntax is:
% tla mkpatch ORIGINAL MODIFIED DESTINATION
which compares the trees ORIGINAL
and MODIFIED
.
mkpatch
creates a new directory, DESTINATION
, and stores the
changeset there.
When mkpatch
compares trees, it uses inventory ids. For example, it
considers two directories or two files to be "the same directory (or
file)" if they have the same id – regardless of where each is located
in its respective tree. (See Inventory Ids for Source.)
A changeset produced by mkpatch
describes what files and directories
have been added or removed, which have been renamed, which files have
been changed (and how they have been changed), and what file
permissions have changed (and how). When regular text files are
compared, mkpatch
produces a context diff describing the
differences. mkpatch
can compare binary files (saving complete
copies of the old and new versions if they differ) and symbolic links
(saving the old and new link targets, if they differ).
A detailed description of the format of a changeset is provided in an appendix (see The arch Changeset Format).