[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Gnu-arch-users] Working out a branching scheme [was: tag --seal --f
From: |
Tom Lord |
Subject: |
Re: [Gnu-arch-users] Working out a branching scheme [was: tag --seal --fix] |
Date: |
Thu, 1 Apr 2004 21:33:26 -0800 (PST) |
> From: Andrew Suffield <address@hidden>
> On Thu, Apr 01, 2004 at 12:28:27PM -0800, Tom Lord wrote:
> > > CVS symbolic tags map precisely to configurations. They are almost
> > > certainly what you are looking for.
> > Yes, but:
> > Configurations lack referential transparency. A configuration file
> > can change at any time.
> And that's the biggest reason why they're the equivalent of symbolic
> tags.
> In real-world terms: you've cut the release, and it's ready to
> go... but just as you're about to send the CD image off for mastering,
> a major (but trivially fixable) bug is discovered.
> The marketing materials have already been printed. They say "1.0.0" on
> them. You're not allowed to change the version number at this
> point. But you can afford a few hours to fix the bug and run the
> regression suite again.
> You don't normally need to change them. But when you do, you *really*
> need to change them. Realistically, versions are descriptions, not
> logical identifiers. The arch revision spec(s) is the identifier.
> [You can make the contents of a *logical* file identity constant if
> you want to - just make a rule that you only rename release configs,
> you don't edit them, so your broken 1.0.0 release becomes 0.99.n
> instead]
Interesting scenario but not entirely relevent.
One thing you can do in that scenario is keep two tag-branches: a
candidates and an official.
You cut the CD master from the candidate branch. The =RELEASE-ID and,
if you're gnuish, your --version output refers to that.
When the CDs go out on the truck -- and all your first-run docs are in
them, then (for convenience) you can tag the release.
There's countless variations but they all come down to (a) using a
revision X config as the coordinate of a release; (b) being able to
robustly maintain some revisions whose names map deterministically and
simply to release id's.
-t
- [Gnu-arch-users] tag --seal --fix ?, Juliusz Chroboczek, 2004/04/01
- Re: [Gnu-arch-users] Working out a branching scheme [was: tag --seal --fix], Robin Farine, 2004/04/01
- Re: [Gnu-arch-users] Working out a branching scheme [was: tag --seal --fix], Aaron Bentley, 2004/04/01
- Re: [Gnu-arch-users] Working out a branching scheme [was: tag --seal --fix], Juliusz Chroboczek, 2004/04/01
- Re: [Gnu-arch-users] Working out a branching scheme [was: tag --seal --fix], Aaron Bentley, 2004/04/01
- Re: [Gnu-arch-users] Working out a branching scheme [was: tag --seal --fix], Dustin Sallings, 2004/04/01
- Re: [Gnu-arch-users] Working out a branching scheme [was: tag --seal --fix], Miles Bader, 2004/04/01
- Re: [Gnu-arch-users] Working out a branching scheme [was: tag --seal --fix], Aaron Bentley, 2004/04/01
- Re: [Gnu-arch-users] Working out a branching scheme [was: tag --seal --fix], Tom Lord, 2004/04/02