l0b0 l0b0 - 1 year ago 44
Git Question

Conflict when squashing linear commit history

How is it possible that when trying to squash/fixup a linear branch I still have to do manual merges? The repo has been converted from Subversion. Every conflict is either "Automatic cherry-pick failed" or "Aborting commit due to empty commit message". The latter I could understand, but a

or something would be useful.

Typical output:

user@machine:/path (master|REBASE-i)$ git add * && git rebase --continue
[detached HEAD c536940] fixup!
Author: John Doe <John.doe@example.com>
2 files changed, 57 insertions(+), 4 deletions(-)
Automatic cherry-pick failed. After resolving the conflicts,
mark the corrected paths with 'git add <paths>', and
run 'git rebase --continue'
Could not apply 8854a54... >6d5f180 foo
user@machine:/path (master|REBASE-i)$ git st
# Not currently on any branch.
# Unmerged paths:
# (use "git reset HEAD <file>..." to unstage)
# (use "git add/rm <file>..." as appropriate to mark resolution)
# both modified: filename.ics
no changes added to commit (use "git add" and/or "git commit -a")

Answer Source

These work:

git mergetool
git rebase --continue