Someone else can better reword this question, but here is what I want to do:
I have been working on a long lived major-refactor branch B. I have been regularly merging master in and by now branch B is ahead of master by ~200 commits. I am ready to send a pull request now but I want to cleanup my commit history a bit. Basically I want to squash all my ~200 commits into just 3 commits:
- Commit 1 = All files that got deleted
- Commit 2 = All new added files
- Commit 3 = Everything else i.e. all moved/editted files
And, just so I don't screw it up, I would like to do this history-rewrite on a separate branch from my own branch B and send in that branch as my pull request.
What's the easiest way I can achieve this in git?