Current behaviour is to abort a push if the working directory is dirty. The only option then (other than committing) is to shelve the changes, then unshelve them after the push. Could we please have a --rebase option to rebase the working directory onto the new parent instead? Not only will this just have to be done manually without it, rebasing is better than shelving, because we get a proper merge in the event of conflicts.
Issue #349 wontfix