incubator-flex-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Om <bigosma...@gmail.com>
Subject Re: [DISCUSS] Re: [VOTE] Branching Strategy and SCM
Date Mon, 13 Aug 2012 22:46:09 GMT
On Mon, Aug 13, 2012 at 3:29 PM, Alex Harui <aharui@adobe.com> wrote:

>
>
>
> On 8/13/12 3:24 PM, "Carlos Rovira" <carlos.rovira@codeoscopic.com> wrote:
>
> > 2012/8/14 Dave Fisher <dave2wave@comcast.net>
> >
> >> One thing I like about SVN is that it discourages branching to necessary
> >> times while git encourages branching for a whim.
> >>
> >
> > SVN discourages branching because is not a core part in the design of the
> > system, while in Git is a core part.
> >
> > In SVN you try to not branch because you know the nightmare it could
> bring
> > to your source code. In Git you will want to branch because it brings
> > clarity and best practice to you development model...
> What is that "clarity"?  Can you give me an example?  If I want to
> contribute a set of Spark Charts, why should I have to cut a branch first?
> Why can't I just check in ChartBase into the "develop" branch, then add in
> Pie, Bar, etc over time in subsequent check ins as I finish them up?
>

There can be many scenarios.  Let's say that while working on ChartBase you
realize that you can make it perform much better by tweaking something in
UIComponent.  You cant make that tweak in 'develop' because everyone else's
work might get affected.  So you cut a 'UIComponentTweak 'branch, make the
tweak to UIComponent, run regression tests for existing components and test
the new ChartBase.  When you are happy, you merge the 'UIComponentTweak'
branch to 'develop' and continue working on 'develop'.

You may ask - why branch?  Why not do all the work locally before checking
it into 'develop'.  This prevents me from collaborating with others.  I
might enlist the help of other committers and non-committers to help me run
regression tests if I do it on a branch on the remote repo instead of just
on my machine.

As you can see - you branch when you need to.  No one is forced to not work
on the develop branch.

Om

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message