[lkml]   [2008]   [Feb]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: Announce: Linux-next (Or Andrew's dream :-))
    On Tue, Feb 12, 2008 at 09:09:34AM -0800, Linus Torvalds wrote:
    > I also don't think rebasing helps the particular problem under discussion
    > (ie conflicts due to having to sort out dependencies between different
    > trees), and in some ways hurts it.

    How do you suggest that we fix the problems we had with the initial
    merge with the ARM tree.

    We were in the situation where, had I asked you to pull my tree, you'd
    have had a fair number of conflicts to resolve - I tested this by trying
    to merge your tree into my 'devel' head.

    The result wasn't pleasant - even I didn't know how to fix up a lot of
    those conflicts, so the only way I could move forward was to reconstruct
    the 'devel' head (which is just merges of other branches) omitting the
    problem branches.

    This then posed something of a problem - of which I saw three solutions:

    1. ask the original authors of changes in those problem branches to come
    up with patches or fixes in their git trees (in the rare case that
    they have git trees) to bring the branch into line with the conflicting
    changes in mainline. The resulting branch with that change applied
    probably won't build, which means bisect pain for people who happen
    to bisect to that point.

    2. botch the merge, publish the tree, and then hit heads together to try
    and get the problem resolved - again resulting in a commit point (the
    merge) which is nonsense and unbuildable.

    3. rebase the branch on top of the conflicting change, throw out the
    patches which prove to be a problem and ask the original author of
    those patches to fix them up for the conflicting change. The result
    is a completely bisectable tree.

    (3) is the solution which I chose, and it worked _extremely_ well.

    (3) is effectively what akpm does with his tree - when a patch conflicts
    with other changes, he throws the changes out and bangs peoples heads
    together to get a new set of patches generated which work together. In
    that respect, it's no different, and it's been proven there to work well.
    So I see git as being no different.

    Russell King
    Linux kernel 2.6 ARM Linux -
    maintainer of:

     \ /
      Last update: 2008-02-12 21:17    [W:0.022 / U:1.252 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site