Skip to main content

Research Data Management

Versioning refers to saving new copies of files whenever changes are made so that you can go back and retrieve specific versions of your files later.

Naming Versions

When creating new versions of files, record the changes made to the files and give the new version a unique name. Follow the general advice on the Organize tab, but also consider the following:

  • Include a version number, e.g "v1," "v2," or "v2.1".
  • Include information about the status of the file, e.g. "draft" or "final," as long as you don't end up with confusing names like "final2" or "final_revised".
  • Include information about what changes were made, e.g. "cropped" or "normalized".

Simple File Versioning

One simple way to version files is to manually save new versions when you make significant changes. This works well if:
  • You don't need to keep a lot of different versions.
  • Only one person is working on the files.
  • The files are always accessed from one location.

The directory below shows multiple versions of a web page mock-up called DMSSiteHome.jpg. Note the use of v1, v2, etc. to indicate versions. The notations "FISH" and "SandC" indicate different images that were swapped into some versions, i.e. major changes that were made.

file versions screenshot, image by Amy Hodge

Saving multiple versions makes it possible to decide at a later time that you prefer an earlier version. You can then immediately revert back to that version instead of having to retrace your steps to recreate it.

This method of versioning requires that you remember to save new versions when it is appropriate. This method can become confusing when collaborating on a document with multiple people.

Advanced software options

git logoIf you have more sophisticated version control needs, you might consider a distributed version control system like git. Files are kept in a repository and users clone copies of the repository for editing and commit changes back to the repository when they are done. 

Version control systems like git are frequently used for groups writing software and code, but can be used for any kind of files or projects. Many people share their git repositories on GitHub.