[darcs-users] Re: So how do you do this?
Tommy Pettersson
ptp at lysator.liu.se
Fri Feb 11 15:12:14 UTC 2005
I'll take a guess at what you want to do.
You say you want to create a patch when you already have
three of them, so I guess you're talking about different
kinds of patches; that you want to create a unified diff file
(usually just called a "patch") for the non-darcs main tree,
with your work from the three endianness darcs patches?
This is how I would do it:
1) darcs get [--tag or --to-patch <something>]
This should be the "old" version for the constructed
unified diff file, a version well known to whom the
diff is for. In your case, you should get everything
to the patch before endianness-1 and in addition to
this also pull the sync patch. This will construct a
repo looking like the latest version of the non-darcs
main tree, without you endianness work.
(in that repo)
2) darcs tag -m old
3) darcs pull [all wanted patches from the original repo]
In your case, the three endianness patches.
4) darcs diff -u --to-tag old > patch
The file `patch' will now be a unified diff file against the
"old" version, that incorporates exactly the changes pulled
in after the old-tag: the endianness patches, and you can thus
apply the endianness work to the the non-darcs main tree with
the patch command and this diff file.
(If the sync patch depends on one of the prior endianness
patches, it will be more complicated.)
--
Tommy Pettersson <ptp at lysator.liu.se>
More information about the darcs-users
mailing list