Comment on this issue from Ches Martin on bitbucket-users:
Seems like it'd potentially lead to more frustration and confusion than good on a site/service that is largely about sharing repos, don't you think? backout would almost always be the prudent choice. Granted, strip might be handy if you just pushed a string of revisions, but if the goofs are more than rare, it's probably time to correct the blind pusher's habits instead of bitbucket ;-)
I would like to see strip functionality -- it would make it easy for me to use bitbucket as a scratch pad for outgoing patches.
My idea is to work on the patches locally with MQ, but then push them to a regular repository when things look good. When I revise the patches, I'll go strip the top of the published repository and re-push the changesets.
I vote for the possibility of stripping selected revisions. I have deleted and re-created a repository a couple of times to remove changes that were pushed by accident.
Also, for forks with a few changesets that will be pulled upstream it sometimes takes a few iterations to get it right. This leads to several heads, and it would be cleaner to be able to strip the first attempts.