WP Post Branches will create a private branch of an post in public. When you publish a branch, overwrite the original post.