[asterisk-dev] DAHDI migration to Git

Shaun Ruffell sruffell at digium.com
Thu Dec 6 10:57:25 CST 2012


On Thu, Dec 06, 2012 at 10:13:37AM +0100, Olle E. Johansson wrote:
> 
> In addition, there are things that we as Asterisk developers have
> grown depending on that needs to be in place, like the automerge
> system that is awesome, but not in place in many other projects. I
> personally don't know if that's a feature of GIT or and addon, but
> most people I've asked haven't given me any answers on how to
> replace that.

What I do that elimiantes any automerge for DAHDI. I keep my work in
progress as a linear set of changes ontop of their target branch
(mostly trunk since, following the kernel work flow, changes go
first into trunk and then are cherry-picked onto the release branch
so the focus is alway son keeping trunk usable/stable). Then every
once in awhile, when it's convenient for me to deal with any
conflicts, I rebase those branches on top of the current state of
their target branch. If their are conflicts I can fix them up easily
since the changes are very granular and voila.

For long-running feature branches I maintain two parallel branches.
One branch that I never rebase, so I have a history of what I was
working on, and one branch that I keep 'clean' for trunk. As long as
"git diff <feature> <feature-for-trunk>" show zero differences I
know I'm good and git makes this thing relatively easy.

Another thing I like doing is keeping a branch ontop of trunk/master
that contains all the patches I've submtted for inclusion. Then as
those patches are merged / applied I can see them fall off my
patch-queue branch. So I always have one place to look to see which
changes I'm advocating for are still outstanding.

So, basically, I don't miss automerge with my git repositories.

> I think we as a project have to respect Digium's situation and
> follow their flow in this case. I'm grateful for the
> infrastructure provided by Digium, and as a constant abuser of
> branching and automerging in their svn, I can't complain ;-)

I think Asterisk could benefit from something like linux-next.
Basically a branch created by a cron job once a week (Linux is daily
but that's probably overkill for Asterisk) that is a merge of all
the work developers believe is getting really close for inclusion in
trunk, and then the test suites that all the contributors have setup
can be run against the -next branch. I think this could greatly
increase the probability of keeping trunk safe to recommend that
people run.  But that's a sort of 'automerge' facility that the
Linux community has set up.

> While GITHUB may be great, I don't like a situation where one
> site, one company has all the infrastructure. Diversity is great.
> The internet is a distributed model. 

+1 this is why I so wish that there was a way we could just figure
out how to review code by email... Then we could keep dicussion
about code all in one place, on the -dev lists, as opposed to spread
out around several different web services, etc.. But admittedly, I
don't have what I believe to be the clear answer here.

-- 
Shaun Ruffell
Digium, Inc. | Linux Kernel Developer
445 Jan Davis Drive NW - Huntsville, AL 35806 - USA
Check us out at: www.digium.com & www.asterisk.org



More information about the asterisk-dev mailing list