title: Git: Merge a really old branch into a newer one with many commits and conflicts
body: <p>I have some code which was cloned from an active Github repo, modified, and then made available (still in source-code format) separately with a hardware product. Since then, the source repo has seen 7,000+ commits, and I'd like to see if I can apply those bug fixes and feature additions to the forked codebase.</p>
  
  <p>I've managed to determine which commit in the original repo the forked codebase was based from. So, I: 1) Cloned the original repo, 2) Checked out the commit the forked copy was based from, 3) Made and switched to a "FORK" branch, and 4) Merged in the changed files from the forked codebase and committed them as the first commit of this "FORK" branch.</p>
  
  <p><em>Now</em>, <em>How should I try to merge in the 7,000+ commits in the main branch?</em></p>
  
  <p>Switching back to the main branch, checking out the latest commit, and "git merge FORK" causes a slew of merge failures because the code has changed so much, and trying to manually diff-merge the conflicts would be too error-prone and time-consuming.</p>
  
  <p>Is there a way to either:</p>
  
  <ol>
  <li>Have git output each commit in MAIN as a patch file so that I can apply them, in sequence, until there's a conflict, or...</li>
  <li>Have git tell me which commit in MAIN would produce the first conflict if I were to try "git merge FORK"? I guess I could manually hunt for it (by checking out the conflict midway between the forked commit and HEAD, and trying merge, if conflict, back up further, etc), but I'd like to know if git can find that spot for me.</li>
  </ol>