I'm using Emacs + it's in very many ways fabulous magit-mode to work with git. There is one aspect of my workflow though that I can't map to this, and thus this question.
Sometimes you have a commit which should be reworked into separate commits. I can interactively rebase my commits with magit, and declare my intend to edit said commit.
Now I have to switch over to git gui, select "ammend last commit" which shows me the staged changes, and unstage those parts I want to become a separate commit. Then I commit, stage the exclusions, and commit again - voila, I have a new commit within my history.
I have so far not found a way to accomplish this using Emacs. Any hints?
nextbranch rebasing has been improved a lot, e.g. the commits yet to be reapplied, as well as the already reapplied commits, are shown in the status buffer while a rebase is in progress. Your question ("how to split up a commit") I have answered in detail elsewhere: github.com/magit/magit/issues/966#issuecomment-60498587. (What Jordon suggests below is one way of doing it, but when using thenextbranch there is a more elegant variant).