[darcs-users] creating tags after the fact (was: finding the patch where...)
Ben Coburn
btcoburn at silicodon.net
Fri Nov 30 02:13:23 UTC 2007
On Nov 29, 2007, at 14:14, Nathan Gray wrote:
> [...]
>
> This particular repository is an import from CVS and contains 18K
> darcs patches, and the patches I need to unpull are several hundred or
> thousands back.
>
> My goal on this project is to create darcs tags at the appropriate
> places marking our production versions, which I have only as tarballs
> of source code.
>
> Is it possible to create a tag by listing the patches that should be
> included, while leaving out other patches in the repository? Though I
> still have to figure out which patches I need and which I do not.
>
> -kolibrie
>
Yes, I wrote some code to do this for special repository usage
semantics a few months ago. Here's some ideas on how to do this....
1) darcs only
Create a new blank repository. Pull in only the patches you want to
tag. Create a tag. Send and apply the tag back to the full
repository. Remove the temporary repository used to create the tag.
Note: This will probably be way too slow for such a large number of
patches.
2) forge the tag
Use darcs changes with XML output to gather information on the
patches you want in your tag. Forge a fake output file from darcs
send with a tag listing all the patches you want to tag. Apply the
forged tag to the full repository.
Note for both approaches: I think darcs optimize --reorder-patches
will commute the tags into the proper dependency location. This is
probably a good idea once you have got the tags into the full
repository.
Regards, Ben Coburn
More information about the darcs-users
mailing list