[haiku-development] Re: Git/Hg: some speed tests

  • From: Oliver Tappe <zooey@xxxxxxxxxxxxxxx>
  • To: haiku-development@xxxxxxxxxxxxx
  • Date: Thu, 05 May 2011 01:44:43 +0200

On 2011-05-05 at 00:54:59 [+0200], Urias McCullough <umccullough@xxxxxxxxx> 
wrote:
> On Wed, May 4, 2011 at 3:52 PM, scottmc <scottmc2@xxxxxxxxx> wrote:
> >> Then we drop the sequential revision number requirement. We will need
> >> to start more actively versioning Haiku, even as we develop it.
> >
> > Perhaps we just have the build server tag the builds sequentially?
> > I'd guess that the majority of the users testing Haiku are using
> > prebuilt images?  There'd still be the handful of us who are doing our
> > own builds, but then we can't control the build environment anyways.
> 
> Perhaps with a YYYYMMDDHHMMSS tag instead? :)

Tagging many revisions is no good idea with git, as it gets really slow 
when there are many tags.

We could tag the very first changeset of every branch (i.e. in master and 
every release branch) and then use 'git describe' to work out a revision 
descriptor that would look like this:

    master-39148-g206031c                 [in the master branch]
    r1a3pre-21-g1234567               [in the r1a3 release branch, before 
                                       the release]
    r1a3-4-g1234567                   [in the r1a3 release branch, after
                                       the release]

The numbers in the second column always indicate the distance the specific 
revision has from the tag given in the first column (the third column being 
git's short hash for the changeset).

This would require only one tag for each branch plus one per release.

Additionally, incorporating these descriptors in AboutSystem would clearly 
indicate "foreign" builds (e.g. done from a feature branch available on 
github/gitorious), as those descriptors wouldn't match any in the central 
master.

How's that?

cheers,
        Oliver

Other related posts: