Re: Effective difference between git-rebase and git-resolve
- From
Junio C Hamano <junkio@cox.net>
- Date
- Mar 25, 2006, 06:08 UTC
- Message-ID
- <7v64m3ys3a.fsf@assigned-by-dhcp.cox.net>
- In-Reply-To
- <Pine.LNX.4.64.0603242014160.15714@g5.osdl.org>
Linus Torvalds <torvalds@osdl.org> writes:
Show 10 quoted lines
> As to rebase, it often is very nice, but on the other hand, it leaves > things in a total mess when it fails, which is a pity. Maybe there's a > nice way to just continue, but I end up just doing a > > git reset --hard ORIG_HEAD > > to undo the failed rebase. > > Junio, is there some magic to restart a rebase after you've fixed up the > conflicts?
The modern rebase is essentially git-format-patch piped to git-am (with -3 flag to allow falling back to three-way merge), and all the familiar "the patch did not apply -- what now?" techniques can be employed.
Since the pre-image blobs recorded in the intermediate format-patch output by definition exist in your repository, it always falls back to three-way merge when the patch does not apply cleanly. Then you can resolve and say "git am --resolved" to continue.