git rebase fails with Unknown exit code (128) from command: git-merge-recursive
git, git-svn, github, merge, rebase
Solution
I had a similar issue with this error and I gave up `rebase`, and instead used `cherry-pick` to pick the changes, and it worked fine.
Problem
Consider the following scenario: - upstream repository with 2500 is stored in SVN - git user A imports the repository into git and commits 1 patch - git user B imports the repository into git and commits 1 patch - git user A wants to merge the patch from git user B In this case, if user A uses `git merge`, then the git history will be polluted with the common svn commits (i.e. instead of 2502 commits, history will contain 2501+2501 = 5002 commits!) If user A uses `git rebase`, then git history will be correct (2502 commits). This works fine in this simple scenario, but if user A and user B had not 1 but 1000 commits each then a strange complication arises: `git rebase -Xours` fails with the following message: ``` First, rewinding head to replay your work on top of it... fatal: Could not parse object '98d7cd83de321e737b22240752cd178622d29406^' Unknown exit code (128) from command: git-merge-recursive 98d7cd83de321e737b22240752cd178622d29406^ -- HEAD 98d7cd83de321e737b22240752cd178622d29406 ``` You can e.g. reproduce this issue using the following github repositories: ``` git clone https://github.com/opentk/opentk cd opentk git remote add mono https://github.com/mono/opentk git fetch mono git checkout -b integrate git rebase -Xours mono/rodo-consolidate-opentk ``` Does anyone know why this happens? Any ideas how to resolve this issue?