I frequently run into a use case where I identify a small bug in a committed changeset far after the fact so that reverting the changeset is not an option.
I've looked at similar questions and the Mercurial docs for graft and general advice on backporting changes but either this "simple" use case isn't covered, or it's subsumed in a complex morass of DVCS rebasing/cloning/exporting/importing that is far more abuse than it's worth for what seems to be a trivial operation.
In short, in a repository consisting of
A -> B -> C -> D -> E
there's a one line bug that needs fixing in one file in changeset B which consists of a number of changes to multiple files. Is there a way to do this without reverting/fixing/reapplying all of B? Just being able to do
... -> B -> B' -> C -> ...
would solve this problem.
Note that I have zero context for the concept of rebasing so unless you're willing to spoon-feed it to me, it's not going to help much. My needs are usually pretty simple; I use Mecurial essentially in single-user mode as an advanced form of RCS or SVN, typically using only commit, branch, and merge (absolutely no push, pull, import, export, rebasing, or other 'distributed' features). Yes, I know I'm potentially ruling out a lot of options for solving this problem, but my focus is on fixing my code, not on understanding fine-grained behavior of Mercurial features I never use (sorry, just being honest here.)
If this isn't possible, please let me know so I can just commit my fix as F with the commit message that changesets B through E are broken.