When you write a post in WordPress, it is advisable to save it every now and then in case something goes wrong. Your computer or the web browser may crash, or you may lose the internet connection. In early versions, each post was saved just once and so when you saved your work, it overwrote the previous version of the post. On occasion that went wrong and the whole post was lost.
So WordPress introduced “revisions”. Put simply, every time you save the post, a new copy of it is saved, similar to in Wikipedia. This stops things getting overwritten, and also allows you to revert back to a previous version if you want to do so.
The only with this is that by the time you come to publish the post, it probably has several versions saved in the site’s database. And since WordPress automatically saves edited posts sometimes as well, this can make the posts part of the database several times larger than it needs to be. After all, once a post has been published, you may not need all of those versions.
One way to control this is a plug-in called Revision Control, which allows you to not only set global settings for the number of revisions stored, but also on a per-post basis, which might be useful if you do want to keep a larger number of revisions for important or longer posts. There is also an option to delete individual saved versions.
Revision Control can be installed from the WordPress despository.
Once installed, you can set the default number of revisions to be stored for pages and posts in addition to the published version.
Under each the list of revisions on each post, there is also the option to set a different number of revisions to save for that post.
The number takes effect when the post is saved, so one of the drawbacks of this plug-in is that it does not clean out the revisions on posts already published without re-saving them. But it does give a good level of control over everything the you write in the future.