Bazaar equivalent for some foreign concepts

Ben Finney ben at benfinney.id.au
Wed Mar 4 22:42:59 GMT 2009


Howdy all,

I have recently been informed of the ‘pristine-tar’ package in Debian.

Description: regenerate pristine tarballs
 pristine-tar can regenerate a pristine upstream tarball using only a
 small binary delta file and a revision control checkout of the
 upstream branch.
 […
 The delta file is designed to be checked into revision control
 along-side the upstream branch, thus allowing Debian packages to be
 built entirely using sources in revision control, without the need to
 keep copies of upstream tarballs.


The tool has a ‘commit’ command and a ‘checkout’ command:

       pristine-tar commit
           pristine-tar commit generates a pristine-tar delta file for
           the specified tarball, and commits it to version control.
           The pristine-tar checkout command can later be used to
           recreate the original tarball based only on the information
           stored in version control.

           For pristine-tar checkout to work, you also need to store
           the precise contents of the tarball in version control. To
           specify in which tag (or branch or other treeish object)
           it’s stored, use the upstream parameter. This defaults to
           "refs/heads/upstream", or if there’s no such branch, any
           branch matching "upstream". The name of the tree it points
           to will be recorded for later use by pristine-tar checkout.

           The delta files are stored in a branch named
           "pristine-tar", with filenames corresponding to the input
           tarball, with ".delta" appended. This branch is created or
           updated as needed to add each new delta.

       pristine-tar checkout
           This regenerates a copy of the specified tarball using
           information previously saved to revision control by
           pristine-tar commit.


This all sounds great, except of course the author is overly enamoured
of Git :-) and the ‘commit’ discusses concepts that are foreign to me
as a Bazaar user. The only “treeish object” I'm aware of that can be
relied upon in Bazaar is a working tree, for which there is exactly
one per branch.

Nevertheless, I would like to use this with Bazaar, perhaps modifying
it if necessary to do so. What is the Bazaar equivalent of “specify
in which tag (or branch or other treeish object) [the commit is]
stored”

-- 
 \      “I have a large seashell collection, which I keep scattered on |
  `\    the beaches all over the world. Maybe you've seen it.” —Steven |
_o__)                                                           Wright |
Ben Finney




More information about the bazaar mailing list