Understanding rebase
- From
Yang Zhang <yanghatespam@gmail.com>
- Date
- Nov 6, 2008, 22:23 UTC
- Message-ID
- <49136E60.4090605@gmail.com>
What properties must commits have for them to be rebase-able?
One example arrangement that would cause a rebase to fail is:
- change lines 10, 12, 14 in branch A - change lines 11, 13, 15 in branch B
These changes are commutative (I believe), but that is insufficient for avoiding conflicts on a rebaes. For a concrete example of this, see:
http://assorted.svn.sourceforge.net/viewvc/assorted/sandbox/trunk/src/git/gitsvn.bash?revision=1065&view=markup
Another question that probably gets at the same thing: I understand what rebasing gives me from a high level (rearranging a branch of commits to be in a series with another branch), but is there a simple explanation of how, precisely, this is accomplished?
Thanks in advance!
-- Yang Zhang http://www.mit.edu/~y_z/