git wonders never cease. This page describes how to use git rebase -i to split commits. (Thanks Chris Lalancette and Stephen Tweedie).
Stephen notes also: “git diff --cached
isn’t mentioned in that git-rebase page, but it’s an invaulable part of the process”. Use git diff --cached
during the splitting process to see which commits you’ve added to the index but not committed yet. This lets you see what your split commit will look like.
Clint ‘herlo’ Savage showed me this at one point and I was thoroughly amazed.