YASR: SharePoint 2007 Versioning

[Yet Another SharePoint Relief Series] In SharePoint 2003 you can enable versioning for a Document Library, so SharePoint will store for each document in that library previous versions when the document gets edited. That’s nice, but that’s about it what you get out-of-the-box. Since each version of the document is in fact a complete document (it’s not the delta that’s stored for a version) big documents can take up more space than desired. Just imagine that you have a 1MB Word document for which you have 15 versions, the total size that the document item will use, is 15 MB (15 times 1 MB). So a very common request is to limit the number of versions that is stored in a document library. In SharePoint 2003 there is no out-of-the-box functionality to do that, although it’s quite easy to write a Document Library Event Handler to accomplish this, but you do need to write some code and deploy the solution.

In SharePoint 2007 however, you specify the number of versions that should be kept quite easily. In the Document Library Settings page, you can navigate to the Versioning Settings, where you can enter any number of versions to keep.

Another thing on this page that may get your attention is the fact that you can either choose to only create major versions, or you can choose to create major and minor (draft) versions. A little bit further on the page you can specify who can read the draft versions of the document.

So when you enable major and minor version a possible scenario could go like this: you create a new Word document in the document library. This document will become version 0.1. When you edit the document again, you will create version 0.2. When you decide it’s time for other people to see your hard work you can decide to publish the document as a major version.

This action will promote version 0.2 to version 1.0, so the version number 0.2 will change into version 1.0. The version history also reflects this:

Another common complaint for SharePoint 2003 is the fact that versioning is only available in document libraries. In SharePoint 2007 versioning is also available for lists (although only major versions). For example editing a list item will result in the following version history:

Document and list item versions in SharePoint 2007: yet another SharePoint relief!


  • YASR is very helpful, especially with the screenshots.



  • Hi ,
    Thats a goog info. Thanks

    Is there any ways to enable event handler in Sharepoint 2007

  • Thanks for posting this. I needed this info for a meeting tomorrow. Everyone here uses LiveLink (from OpenText) and some folks want to migrate to Sharepoint. I'm not sure 2003 is ready for prime time in the "versioning" department. I really appreciate the blog!

  • Hi,

    I created a web applications where the application is able to display information from sharepoint List including the history. On WSS 3.0 the web service I am using is not able to extract the non-current(previous version) task item from the list. The application worked well on Sharepoint 2003. Do you have any idea how I can get previous version of an item using sharepoint's web services ?

  • How do migrate all of the history or versions from a 2003 SharePoint Server to a 2007 SharePoint server without losing the versioning.

    I am sure you can do it file by file but I want to know how to do it moving entire libraries with version intact.

  • Please help. This is related to versioning.

    I need to pro grammatically get an Listitem versions data.
    I can read from listitem.versions but my problem is not getting the correct Modified date.Please help me to solve this.

  • I am having the same issues as Shiva above. In fact, all DateTime or Date fields are returning incorrect values for previous versions.

    Anyone know if this is a known issue?

Comments have been disabled for this content.