[ewg] Re: [ofa-general] ANNOUNCE ofed backports for 2.6.22 kernel bits

Arthur Jones arthur.jones at qlogic.com
Tue Jul 24 09:46:59 PDT 2007


hi michael, ...

On Tue, Jul 24, 2007 at 07:23:06PM +0300, Michael S. Tsirkin wrote:
> [...]
> > for just the backport branches, i merge different ways
> > from different sources:
> >    * from upstream, it's a pull into master and a git merge master
> >      into local backport branches -- i call this a reflow.
> >    * from local developers, it's a git pull straight into
> >      the backport branch, then reflow the repo.
> >    * from ofed, i apply the backport patch by hand and
> >      fixup the inevitable clashes -- either because part
> >      of the patch is already applied, or because context
> >      has changed enough for git apply to get confused.  when
> >      these are fixed up, reflow the repo...
> 
> Hmm. Concider that yuou did all of the above, and then mail me
> that there's an update. Now I need to merge updates to multiple branches directly
> and git pull does not do this. It's a problem.

for changes made to the canonical source, it's
just git pull into ofed_kernel and a reflow.

for changes made to the backports, you would need
to git checkout and git pull into each of the
backport branches _in which i made a change_.
the case that i make changes to _all_ or even
a significant number of backport patches is
sufficiently rare that i doubt it is worth scripting.
but, if the script is necessary, it's pretty
straightforward:

set -e
for b in branches-which-have-changed; do
   git checkout $b
   git pull <remote> $b
done

> [...]
> > i can't imagine what script you would need.  can
> > you be more specific?  it would seem to me that you
> > could just pull straight in to the backport branch...
> 
> You'll have to check out branches one by one, and do a pull.
> What if there's a conflict? I currently just do git reset --hard ORIG_HEAD
> and mail the maintainer to fix it up - but this won't work
> with the "bush of branches" approach.

it works for me.  what do you expect will break?

> > > And, I expect almost all git operations will have to be wrapped
> > > in a script in some way, to operate on a bush of branches.
> > 
> > so far, this hasn't been an issue for me.  the only
> > operation that i've scripted is the reflow.  for 
> > most work, i can just ignore the backport branches and
> > do the work in the (copy of) master, then reflow the
> > changes into the backports...
> 
> Because you only have your driver to maintain.

no, i have to maintain quite a few of the
ofed backport branches as well for our release.
if i started getting pull requests from people
with changes to 15 backport branches in one go,
i'd probably want to script it...

i have found that drawing a DAG with graphviz has
been a big help in making sure that i organize the
branches correctly...

arthur



More information about the ewg mailing list