[Bioperl-l] Re: [Bioperl-pipeline] Requirements for pipeline installation (fwd)

Elia Stupka elia@fugu-sg.org
Sat, 24 Aug 2002 01:35:47 +0800 (SGT)


> The web cvs has pretty pictures of the available tags and branches.
> Here is one for the README file.
> http://cvs.open-bio.org/cgi-bin/viewcvs/viewcvs.cgi/bioperl-live/README?graph=1.24&cvsroot=bioperl

Wow, hadn't realised, pretty neat ;)

Elia

> 
> 
> On Sat, 24 Aug 2002, Elia Stupka wrote:
> 
> > Just sent this to somebody who was wondering about "branches" and "main
> > trunk" and "tags", thought somebody else might be interested on the list
> > if they are confused with the terms we use :)
> >
> > Elia
> >
> > ---------- Forwarded message ----------
> > Date: Sat, 24 Aug 2002 01:06:40 +0800 (SGT)
> > From: Elia Stupka <elia@fugu-sg.org>
> > Subject: Re: [Bioperl-pipeline] Requirements for pipeline installation
> >
> > > Ok I guess I am confused about what 'main trunk' is.
> >
> > In code development, at the initial stage of a project, everybody is
> > working together on the same code. When the code reaches some kind of
> > stability, a "tag" is put in, to mark that on that date all code was
> > working well, all tests were passing, and that if people want the latest
> > stable code, they should use that.
> >
> > Now here is the tricky part. Sometimes after you put a tag in, people
> > start relying on that tagged code a lot (let's call it version 0.5 for
> > example). So while development of new functionality happens on the "main
> > trunk" of the code, you might want to "branch" the code that you tagged
> > with tag 0.5. In other words, if you imagine development like a tree, you
> > might want to make minor bug fixes and modifications to the 0.5 code, thus
> > making a little branch on the tree.
> >
> > In a perfect world you would only have tags, and development completely on
> > the main trunk. In a sane normal world, you have small branches, where
> > only small but important code changes such as bug fixes are committed to
> > the stable code that was initially tagged, than branched.
> >
> > If a change is committed to a branch it always has to be committed to the
> > main trunk as well. In a crazy bad world, branches grow insanely long,
> > becoming very different from the original tagged code. In a completely
> > screwed up world branches become not only long but also different from the
> > main trunk. That can lead to real disaster and is usually only resolved by
> > going in deep and back-porting all changes from the branch to the code, or
> > declaring that branch dead.
> >
> > In pictures it's easier to see why it's called main trunk:
> >
> >         start
> >           |
> >           |
> >           |
> >           |tag
> >           |\
> >           | \branch
> >           |
> >           |
> >           V
> >          main
> >
> > I hope it was somewhat clear ;)
> >
> > Elia
> >
> > ********************************
> > * http://www.fugu-sg.org/~elia *
> > * tel:    +65 6874 1467        *
> > * mobile: +65 9030 7613        *
> > * fax:    +65 6779 1117        *
> > ********************************
> >
> >
> >
> > _______________________________________________
> > Bioperl-l mailing list
> > Bioperl-l@bioperl.org
> > http://bioperl.org/mailman/listinfo/bioperl-l
> >
> 
> 

Elia

********************************
* http://www.fugu-sg.org/~elia *
* tel:    +65 6874 1467        *
* mobile: +65 9030 7613        *
* fax:    +65 6779 1117        *
********************************