SharePoint 2010: Retain Version History When Moving List Items and/or Library Documents
SharePoint Version Control
One of the strengths of SharePoint is the ability to implement Version Control. Once enabled, it is possible to determine what changed between two version, and rollback to a previous version as needed. This article does not cover the steps to enable and perform this, but instead, ensure that you can retain the historical information in the case that you ever have to migrate your content.
Site Administration Settings
Migrating SharePoint Content
Anything that you put into SharePoint will eventually need migrated. The reason for the migration may be as simple as consolidating a couple of libraries, or as complex as upgrading from one version to another.
In most cases, the migration will occur seamlessly by the big heads in the NetOps section of your organization. But, every once in a while, an anomaly surfaces, and you're left to your own devices to migrate your own content. When this happens, there are tricks of the trade to ensure that no information is lost.
The first thing to know is that there is built-in functionality, called Content and Structure, that presents many options for managing the content and structure of your Site Collection, Sites, and lists and libraries.
To get to it, go to Site Settings, and look under the Site Administration section and click on the corresponding link.
Content and Structure: Explore Site
Copy vs. Move SharePoint Content
If you're like me, you assume that Copy and Move would behave in a relatively similar fashion. Unfortunately, in SharePoint Content and Management, this couldn't be further from the truth. Both do their respective assigned task, one copies, and the other moves content, but the difference is that one WILL bring the version history with it, and one will not.
To be clear:
- Copy does copy the content, but does NOT copy the Version History.
- Move will move the content AND bring the Version History with it.
I probably don't have to explain any further how unintuitive this is, but I'll sure harp on it for a while. Doing a MOVE (or a 'Cut' a la cut & paste) is a scary option. First, what if something happens during the move, like you lose connectivity, then what state is the content in when normalcy is returned? What if it takes to long and the servers go down for weekly maintenance? These are problems of which you'll need to worry about when you dare to take on such an operation.
A COPY is much safer, as the original is unaffected, and if anything goes wrong, you simply start over.
That said, I'll assume that you've exhausted every other option, and are now forced to carry out the MOVE operation.
Move Content Checklist
Duplicate List / Library
Ensure all field names are exactly the same. The metadata name, not the display name.
Verify Versioning Settings
Ensure all versioning settings are exactly the same.
Verify Window of Opportunity
Ensure the amount of time needed to perform the task is allocated properly
Backup your site, in case the worst happens
Content and Structure: Move Dialog, Specify Destination
MOVE your Content
After completing the checklist above, take a couple shots of liquid courage, and prepare for your operation.
- Site Settings -> Content and Structure
- Navigate to your site & list / library
- Select the item(s) to move. (You may want to only pick partial depending on your time requirement.)
- Select the Move Option
- Select the Destination
There's no crying in SharePoint
Hopefully those are tears of joys I see glistening on your cheeks, and you're not a crying call to the NetOps folks to restore your backed up site.