From: Shawn Pearce <spearce@spearce.org>
To: Johannes Schindelin <Johannes.Schindelin@gmx.de>
Cc: Matthias Kestenholz <lists@spinlock.ch>,
Sean Kelley <sean.v.kelley@gmail.com>,
git@vger.kernel.org
Subject: Re: GIT - releases workflow
Date: Wed, 13 Dec 2006 06:14:50 -0500 [thread overview]
Message-ID: <20061213111450.GB31177@spearce.org> (raw)
In-Reply-To: <20061213105614.GB9484@spearce.org>
Shawn Pearce <spearce@spearce.org> wrote:
> Johannes Schindelin <Johannes.Schindelin@gmx.de> wrote:
> > > > On Tue, 12 Dec 2006, Sean Kelley wrote:
> > > >
> > > > > I was wondering if anyone could share ideas on how best to use GIT to
> > > > > handle releases for those working with a remote GIT repository? Do you
> > > > > create a branch and push it to the remote? Thus you have a new branch
> > > > > referencing the particular release?
> >
> > BTW, if the maintenance releases are sparse and long between, you can
> > actually create the branch from the tag, fix, and tag with the new version
> > number. No need to start the branches early.
>
> Indeed.
[snip]
> The script is really meant for QA people to take in topic branches
> from developers and apply them to a specific version, test that new
> version, then ship that new version. Some of the QA people I work
> with aren't developers and have a somewhat difficult time making
> a build from source; this script makes it a pretty simple process.
>
> The version number incrementor is smart; its based off commit
> lineage. It can automatically create a "2.0.1" tag when "2.1"
> has already been made but "2.0.1" is a bugfix of "2" or "2.0".
What I really should have said was the general idea here is that
we never even have a trunk.
Developers work on topic branches and share/merge those individual
branches as necessary to evolve a topic. When its suitably cooked
in developer land it gets sent off to testing by being pushed into
a someewhat descriptive ref under refs/heads/ready.
Testing can then accept topics by merging them together and creating
tags via the described script.
Developers update their still cooking topic branches when necessary
by pulling in the tags. git merge is smart enough to dereference the
tag and generate the merge. Normally this is held off to the latest
possible moment, and only to make sure there aren't any unexpected
surprises from the merge waiting for the unsuspecting QA person.
Developers start new topic branches off the relevent tag they need
to work on. New features are often made off the latest tag from QA;
bug fixes are often off the tag currently in production.
So like I said, we're basically trunkless and happy. Tag happy.
Thank you Linus, et.al. for packed refs!
--
next prev parent reply other threads:[~2006-12-13 11:15 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-12-12 22:44 GIT - releases workflow Sean Kelley
2006-12-12 22:54 ` Johannes Schindelin
2006-12-13 9:10 ` Matthias Kestenholz
2006-12-13 10:36 ` Johannes Schindelin
2006-12-13 10:56 ` Shawn Pearce
2006-12-13 11:14 ` Shawn Pearce [this message]
2006-12-13 12:34 ` Sean Kelley
2006-12-13 12:39 ` Sean Kelley
2006-12-13 13:13 ` Andreas Ericsson
2006-12-13 2:43 ` Linus Torvalds
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20061213111450.GB31177@spearce.org \
--to=spearce@spearce.org \
--cc=Johannes.Schindelin@gmx.de \
--cc=git@vger.kernel.org \
--cc=lists@spinlock.ch \
--cc=sean.v.kelley@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).