If it is just a dozen or so changes, you can indeed update to good test rev
to start fresh and graft to local
the commits you need to recreate the perfect branch.
Once and only once you are satisfied with your new banch head, use this trick to merge the two heads and ignore the bad test
head. You need to have a single head on your branch.
Now you'd be in a state that test
would hold all the changes from the development
branch. I suggest you use the same trick once more to merge development
in, to make the common parent for test
you need, but without all the pollution that may have taken place in development
. If it does not work, simply make a dummy changeset on development
and retry the trick again (if it makes sense).
In the end, however, you don't seem too worried about the development
branch being polluted by the test
branch. Is it ok in that direction?