I made a commit to a development branch that accidentally included some changes which I would like to drop, and some which should go into a separate future commit.
What I'm looking for specifically, is the equivalent of, as if I did an interactive merge on a forked branch with HEAD^
of the current development branch and selected the changes line by line, except I'd like to do it within the original development, branch amending the commit history, so that the commit exists as a single clean set of changes, rather than an interactive-merge from a different branch.
Is this possible? Are there any better alternative work flows than the above?
A similar question has been asked here: Break a previous commit into multiple commits But the solutions provided involve adding different files from staging as separate commits, whereas I need to amend changes within the same files.