Re: Please pull ACPI updates

From: Linus Torvalds
Date: Thu Jul 17 2008 - 16:29:31 EST




On Thu, 17 Jul 2008, Linus Torvalds wrote:
>
> But even then, any testing you did in your private tree is now suspect,
> because that testing was done with the old history that you threw away.
> So even if you delete all the old histories and never show them, they kind
> of do exist conceptually - they existed in the sense that you tested them,
> and you've just hidden the fact that what you release is different from
> what you tested.

One final note on this: the above is obviously not a problem for simple
code that only really does one thing, and in particular for code that you
wrote yourself. Moving your own commits around to make them make more
sense - or splitting them up etc - is often a _good_ thing, even if it
obviously does change history.

So using rebase to clean up and simplify and/or fix up stupid ordering
issues is good, and "git rebase -i" is actually really good for this
thing.

No, the problems start happening when you do it on a larger scale, or (and
this is very common in the kernel), your rebase _moves_ the commits over
big distances because you update to the top of my development tree. In
that case, while your patches themselves may not have changed, the base
that you based them on may have changed really subtly - it still compiles,
it still "works", but maybe it doesn't work as well as it used to. And
that's why the old testing you did is basically almost worthless.

So rebasing can be good or bad. It's a matter of degree. Rebasing private
and small things is generally good. Rebasing bigger things can cause
problems. And the further away you rebase something, the more problems it
will generally cause.

Linus
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/