Before we move forward, I have a few questions about the "no master"
approach.

There is *no* master branch, so that community-driven pull requests will be
> forced to think about which branch to request against.


- Andrew, can you cite other projects that do not use a master branch?

- On Github, you must have a default branch. If not master, it must be
something else. So, users are not forced to think about the branch to send
a pull request again... they will likely just use the default.

- Why is the "stable" branch not just "master"?

Thanks,
Michael

On Wed, Jan 23, 2013 at 11:25 AM, Brian LeRoux <b...@brian.io> wrote:

> I'm liking it. Start in 2.5?
>
> On Wed, Jan 23, 2013 at 1:19 PM, Filip Maj <f...@adobe.com> wrote:
> > Looks great Andrew!
> >
> > If everyone's on board, how are we going to test run this? Flip a switch
> > at a certain point, give it a shot with one repo for one RC?
> >
> > On 1/22/13 12:29 PM, "Andrew Grieve" <agri...@chromium.org> wrote:
> >
> >>Braden, you're right. I've now done some local playing around in git, and
> >>have an updated proposal that uses merges instead of deleting branches.
> >>PTAL:
> >>
> >>Cordova repositories have three main branches:
> >>1. stable
> >>2. next
> >>3. dev
> >>
> >>Topic branches also exist for collaborating on features, or for
> >>code-review
> >>purposes.
> >>
> >>There is *no* master branch, so that community-driven pull requests will
> >>be
> >>forced to think about which branch to request against.
> >>
> >>1. The "stable" branch.
> >> - Sits at the latest stable release of cordova
> >> - This changes only when doing fast-forward merges from "next"
> >>
> >>2. The "next" branch.
> >> - This branch is used only when in the process of doing a release.
> >> - All tags (both stable and RC) are done on this branch.
> >> - All release-candidate bug-fixes are done on this branch.
> >>
> >>3. The "dev" branch.
> >>  - This is where non-release-candidate commits are done
> >>  - This is where topic-branches are merged into.
> >>
> >>Cutting a release:
> >>1. git checkout next && git merge --ff-only dev
> >>2. Test test test!
> >>3. Fix bugs by committing them directly to "next" and then doing a non-ff
> >>merge of next into dev
> >>4. Tag release candidate
> >>5. Repeat steps 2-4 as necessary
> >>6. Tag the release
> >>7. Create distribution .zip file
> >>8. Test one last time using the dist files
> >>9. git checkout stable && git merge --ff-only next
> >>
> >>
> >>
> >>On Tue, Jan 22, 2013 at 1:59 PM, Braden Shepherdson
> >><bra...@chromium.org>wrote:
> >>
> >>> I think deleting and recreating branches with the same name can cause
> >>> badness in git[1] because of remotes. It's not really the same branch
> in
> >>> terms of commits, and git thinks that your old stable and the new
> stable
> >>> differ by all of each of their commits. Tags can be moved arbitrarily,
> >>>so I
> >>> think stable makes sense as a tag. I'm not sure about how best to
> handle
> >>> next.
> >>>
> >>> [1]
> >>>
> >>>
> http://stackoverflow.com/questions/11844581/git-delete-and-recreate-branc
> >>>h
> >>>
> >>>
> >>> On Tue, Jan 22, 2013 at 11:31 AM, Andrew Grieve <agri...@chromium.org
> >>> >wrote:
> >>>
> >>> > Michal's attending hackathons for the week, and I'm not sure we need
> >>>to
> >>> do
> >>> > a hang-out for this, as I think we really are quite close to
> resolving
> >>> > this. I'd really like to resolve this ASAP so that we don't need to
> >>>have
> >>> a
> >>> > code-freeze for this release.
> >>> >
> >>> > Here's a proposal:
> >>> >
> >>> > Cordova repositories have three main branches:
> >>> > 1. stable
> >>> > 2. next
> >>> > 3. dev
> >>> >
> >>> > Topic branches also exist for collaborating on features, or for
> >>> code-review
> >>> > purposes.
> >>> >
> >>> > There is *no* master branch, so that community-driven pull requests
> >>>will
> >>> be
> >>> > forced to think about which branch to request against.
> >>> >
> >>> > 1. The "stable" branch.
> >>> >  - Sits at the latest stable release of cordova
> >>> >  - No one ever commits to the "stable" branch. It exists only as a
> >>> > short-cut for checking out the latest stable tag.
> >>> >
> >>> > 2. The "next" branch.
> >>> >  - This branch exists only when in the process of doing a release.
> >>> >  - All tags (both stable and RC) are done on this branch.
> >>> >  - When a stable tag is done:
> >>> >     - The existing "stable" branch is deleted
> >>> >     - A new "stable" branch is created from "next".
> >>> >     - The "next" branch is deleted.
> >>> >
> >>> > 3. The "dev" branch.
> >>> >   - This is where all commits are done
> >>> >   - This is where topic-branches are merged into.
> >>> >
> >>> > Cutting a release:
> >>> > 1. Create "next" from the HEAD of "dev"
> >>> > 2. Test test test!
> >>> > 3. Fix bugs by committing them to "dev" and then cherry-picking them
> >>>into
> >>> > "next"
> >>> > 4. Tag release candidate
> >>> > 5. Repeat steps 2-4 as necessary
> >>> > 6. Tag the release
> >>> > 7. Create distribution .zip file
> >>> > 8. Test one last time using the dist files
> >>> > 9. Delete "stable"
> >>> > 10. Create a new "stable" by branching from the HEAD of "next"
> >>> > 11. Delete the "next" branch
> >>> >
> >>> >
> >>> >
> >>> > On Wed, Jan 16, 2013 at 10:34 AM, Michal Mocny <mmo...@chromium.org>
> >>> > wrote:
> >>> >
> >>> > > Just going to throw out one of my personal requirements for
> whatever
> >>> > > proposal we come up with, so it doesn't get lost:
> >>> > >
> >>> > > * Feature branches are great for feature work and/or large sweeping
> >>> > > changes, as are JIRA bugs for tracking them, but cordova has many
> >>>many
> >>> > > trivial issues that could be fixed with "drive-by" patches that
> >>>require
> >>> > as
> >>> > > little friction to commit as possible.
> >>> > >
> >>> > >
> >>> > > On Tue, Jan 15, 2013 at 3:05 PM, Marcel Kinard <cmarc...@gmail.com
> >
> >>> > wrote:
> >>> > >
> >>> > > > How about if there is a specific straw man proposal at the
> >>>beginning
> >>> of
> >>> > > > the face-time? Then the folks that are in agreement won't need to
> >>>say
> >>> > > > anything ;-)
> >>> > > >
> >>> > > > Seriously, making adjustments to something tangible is easier
> than
> >>> > > > instantiating it from scratch. A volunteer for a very simple
> >>>writeup
> >>> on
> >>> > > the
> >>> > > > wiki?
> >>> > > >
> >>> > > > -- Marcel Kinard
> >>> > > >
> >>> > > >
> >>> > > > On 1/14/2013 10:06 PM, Michal Mocny wrote:
> >>> > > >
> >>> > > >> Okay gentlemen, I think there have been countless good points
> >>>made
> >>> > from
> >>> > > >> all
> >>> > > >> parties, but also some bike-shedding.
> >>> > > >>
> >>> > > >> Perhaps it is time to schedule some face-time to better
> >>>articulate
> >>> > some
> >>> > > of
> >>> > > >> the finer points, and to help come to some consensus?
> >>> > > >>
> >>> > > >> -Michal
> >>> > > >>
> >>> > > >>
> >>> > > >
> >>> > >
> >>> >
> >>>
> >
>

Reply via email to