Oh, yes, that is true. I was assuming (naively) that this wouldn't be
a likely case if we were diligent about rebasing before commits
landing.

So, the real trick here is, a workflow of:

feature --> dev --> unstable --> stable

When, and more importantly who, does the Canonical brach to Canonical
branch merges? (Eg. dev --> stable )



On Mon, Jan 14, 2013 at 2:48 PM, Braden Shepherdson <bra...@chromium.org> wrote:
> Aside from the extra overhead and coordination, which I think are a major
> problem, this is a recipe for disaster with merge commits. This doesn't
> require manual conflict resolution to be a problem. Just that, if feature
> branches A and B are merged into dev/unstable and a merge commit is
> created, they and their merge commit now have to be moved to unstable/next
> as a group. These features may be from different developers, etc. etc.
>
>
> On Mon, Jan 14, 2013 at 5:34 PM, Brian LeRoux <b...@brian.io> wrote:
>
>> I think its basically the same except cherry picking not necessary.
>> (But I've been known to be very wrong so take that with a grain of
>> salt!)
>>
>> You work on a Feature branch. It gets rolled into Dev as needed so
>> others can merge / collaborate on said feature. When it feels right
>> instead of merging a large set of potentially breaking commits to
>> Unstable the dev working on said feature just merges that feature.
>> This would require more responsibility for the committer to keep track
>> of their feature branches which I could see as being more overhead.
>>
>> My ideal here is to get to a point where there is something, whatever
>> it is, that we want to denote as a release. That something should not
>> require a whole bunch of coordination. There should be a working
>> branch, whatever we call it, ready for a tag and nothing else on any
>> arbitrary date to be considered a release. Does that make sense?
>>
>>
>>
>> On Mon, Jan 14, 2013 at 2:18 PM, Andrew Grieve <agri...@chromium.org>
>> wrote:
>> > Could you elaborate on what the workflow would be if we merged only from
>> > Feature branches?
>> >
>> > On Mon, Jan 14, 2013 at 5:14 PM, Brian LeRoux <b...@brian.io> wrote:
>> >
>> >> So, what if Canonical branches only received merges from Feature
>> >> branches...?
>> >>
>> >> On Mon, Jan 14, 2013 at 2:02 PM, Andrew Grieve <agri...@chromium.org>
>> >> wrote:
>> >> > On Mon, Jan 14, 2013 at 4:54 PM, Filip Maj <f...@adobe.com> wrote:
>> >> >
>> >> >>
>> >> >> >But do Canonical branches merge into each other? I'm thinking no.
>> >> >>
>> >> >> My understanding:
>> >> >>
>> >> >> - work goes into feature branches
>> >> >> - when contributor(s) deem feature is ready, merge into Unstable,
>> which
>> >> >> then gets vetted (test!!!!!)
>> >> >> - at some point unstable merges into Next
>> >> >> - when tagging, we merge Next into Stable and tag
>> >> >>
>> >> >
>> >> > That's my understanding as well.
>> >> >
>> >> > The "At some point" part would be when we say "hey, let's start
>> working
>> >> on
>> >> > cutting a release", which should align with the wiki's
>> >> > RoadMap<http://wiki.apache.org/cordova/RoadmapProjects> (which
>> >> > targeted 2.3 for November, whoops!).
>> >> >
>> >> >
>> >> >>
>> >> >> Would be different for bug fixes or other maintenance-type commits
>> too,
>> >> >> ya? Those would be directly into Next.
>> >> >>
>> >> > It might cause headaches to commit bug-fixes into Next when it comes
>> time
>> >> > to merge Unstable -> Next.
>> >> >
>> >> >
>> >> >>
>> >> >> Finally, what about hot fixes / patch releases? Branch off the tag in
>> >> >> Stable and put hot patch work into there?
>> >> >>
>> >> > Agree. I think the flow here should be to commit change to Unstable
>> and
>> >> > then cherry-pick it into a branch off the tag (when feasible).
>> >>
>>

Reply via email to