How to capture the Version History of a Document Set
Well, writing this post is such a pleasure. I get to discuss two of my most favorite features in SharePoint: Version History and Document Sets. Specifically, I would like to explain how you can capture the version history of a Document Set. Just like the Document Set is a unique feature (Content Type) in SharePoint, the ability to create a version for the document set is also quite unique. First, we can only capture version history for files, not folders in SharePoint. And the Document Set is pretty much a folder with metadata from SharePoint technical perspective. That said, version history for Doc Sets works differently than those for files. So this is exactly what I would like to explain to you in this article today.
What is Version History?
Version history is a feature in SharePoint that tracks the changes on a given file/document. Every time you make a change, it alters the version history and allows you to trace the changes and restore them. I explained how version history works in greater detail here.
What is a Document Set?
A Document Set is a feature in SharePoint that allows you to organize documents into folders and allows you to tag the folders with metadata (another my favorite feature). Metadata can then be propagated to the files inside of the folder. I blogged about Document Sets a while back in this post.
What is Version History on a Document Set?
Version History, for the most part, is only applicable to individual files/documents, not folders. When Version History is coupled with a Document Set – it allows you to capture the version history of a Document Set. When you do that – it allows you to capture the document set and its contents at that point in time. That means that when you capture the version history of a document set, it captures the snapshot of a document set with its contents (documents) at that point in time.
How to capture the Version History of a Document Set
Unlike file version history, where versions are created automatically each time there is a slight change to the file, Version on a Document Set needs to be created manually each and every time.
Please note that since I have written the post about Document Sets in 2017, Microsoft modernized the look and feel of a Document Set, making it match the look and feel of a modern Document Library. So screenshots below will be different from the ones documented in the post above.
- Navigate to the Library with documents
- Right-click on top of the document set, choose Capture Version
- In the Comments box, provide an explanation for the creation of the Version (optional, but good practice, so everyone knows why the hell you captured a version on a Document Set)
- You will now see the Version created
Document Set Version History Nuances
It is important to understand some important nuances and sometimes “not as expected” behavior if you decide to proceed with this capability.
- Once you delete the documents from a given Document Set, version history will display an “Item not found” message and won’t even show the file name of the files(s) deleted
- If you decide to restore a previous version of a Document Set, it will create another version. However, it might also give you an error message like the one below – The following items could not be restored when restoring this version of the document set, where it essentially complains about the files that were deleted previously (the above scenario).
- If you click on the older version of a document from a Document Set version history, instead of opening up a document for that version, it will just display a version history of the document. To access the right version, you will manually need to choose that older version from a list. So Document Set Version History acts more like a snapshot of the Document Set at that point in time.
Use Cases for the Version History of a Document Set
There are a few uses cases I can see benefiting from the ability of a Document Set to capture Version History:
- You hit a milestone on a project (which utilizes document sets), the project is entering a new phase, and you want to capture the document/versions within the project at that point in time
- You are using Document Sets to manage proposal/contract documentation and need to capture the version history of a Document Set as the proposal has been won and now became a project
- You are using Document Sets to manage legal matters and need to capture the state of documents for different phases of the case/trial