[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Gnu-arch-users] strategy to handle back-fixies

From: Harald Meland
Subject: Re: [Gnu-arch-users] strategy to handle back-fixies
Date: Fri, 21 Jan 2005 13:23:22 +0100
User-agent: Gnus/5.1006 (Gnus v5.10.6) Emacs/21.3 (gnu/linux)

[Andrei A. Voropaev]

> In fact I was (and still am) wondering how in practice this shall
> work. So far no documentation mentions this approach. So below are
> my guesses how it should work. Please correct me if I'm
> wrong.

I don't think you're *wrong*, but the solution you propose below is
slightly diffuse on some points.

> Suppose I have project foo and it is in
> archive/foo--mainline--1.0. So I 'get' this project

You don't mention what the intention for this branch is.

Is it to be used for "development of the project until version 1.0 is
ready to be released", or "bugfixes to the project after its 1.0
release", or maybe both (a la CVS HEAD)?  Personally, I tend to think
of "mainline" branches as having the former semantic, but YMMV.

In any case, it is useful to formulate (at least to yourself) a
distinct intention for each branch you create.

> tla get foo--mainline--1.0 wdir

This assumes that this branch is in your default archive, so I guess
it is safe to make the same assumption for the commands below.

> I do certain changes and create 3 patches by commiting those. So now I
> have
> foo--mainline--1.0--base-0
> foo--mainline--1.0--patch-1
> foo--mainline--1.0--patch-2
> foo--mainline--1.0--patch-3
> At this point I decide that this is going to be release 1.1. So in my
> wdir I do
> tla tag foo--mainline--1.0--patch-3 foo--mainline--1.1

As "tla tag" only operates on the archive you tag into, you can run
this command outside your wdir.

However, once again I'm unclear on what the newly created branch is
supposed to be used for.  Is your policy that base-0 revisions
correspond to releases?  If you need to release a bugfix release
1.1.1, where in the Arch namespace should that go?

> Starting with that my archive shall have foo--mainline--1.0 and
> foo--mainline--1.1 (at the point containing only base-0). Now I can
> continue with applying fixes to foo--mainline--1.0 and develop
> foo--mainline--1.1

How would you describe the version of your software I will get if I do
"tla get archive/foo--mainline--1.0"?  Is it possible to tell, short
of me manually trying to infer so by reading the patchlogs, whether I
have gotten a revision corresponding to

  1) the 1.0 release, or
  2) after the 1.0 release, with some development done towards 1.1, or
  3) the revision in the 1.0 branch that actually corresponds to the
     1.1 release, or
  4) after 1.1 release with additional 1.0 fixes?

If it isn't, you'll have to decide whether any of these questions are
important enough to dictate how you use the Arch namespace.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]