What Is Design Version Control and Why Does It Matter?
Keep your collaborative design efforts organized to avoid insanity.
The days of designers working alone in their respective silos are gone. Now creators are able to work in hyper-collaborative environments where multiple parties can be working on the same project at the same time. As with any innovation, while collaboration has boosted creativity and productivity, it comes with its own set of new challenges.
Collaborative design challenges
Designers still sling around multiple versions of the same file, or worse yet, work on a single file by passing it around. This produces errors, lost changes, chaos, confusion, and tension that manifests in the following scenarios:
- Multiple designers work on the same file and save it in the same place with slightly different names — messy copy conflicts guaranteed.
- Feedback gets lost because it goes back and forth in email or Slack and isn’t documented properly so that the whole team can access it.
- Developers and stakeholders are not in the loop — they have no clue what has changed in the latest version.
- Work gets lost because of spotty internet, unorganized folders, or poor communication.
- Nobody knows what is final because there are endless (non-final) final versions of a file.
All the above leads to a very disorganized workflow and a lot of frustration. Can you relate? You need design version control.
What is version control?
Version control allows multiple designers to work on the same file, syncing their versions by saving them in one place — all without overwriting changes. Sounds great, doesn’t it? The entire version history is recorded to keep track of differences and prevent loss of work. Version control would make your workflow would look something like this:
- You import your design file. These are your master files and your source of truth.
- Each team member creates their own copy of the master file. One person works on the product page, the other on the homepage, etc. Nothing gets overwritten.
- Once everyone is done with their designs, they send the changes to the master file and write a short description of the edits they’ve made and why.
- The stakeholder receives a notification about updates.
- The stakeholder analyzes the design file, leaves comments directly on the areas that need to be changed.
- The team jumps back in their files to make changes based on feedback.
- When everything is done, all changes are merged into the master file.
- The master file is a single point of reference. No duplicate files!
Why does version control matter?
As our work becomes more cross-functional, there’s a growing need for a completely collaborative process. By implementing version control in your design workflow, you can:
- Work with your team on the same files simultaneously.
- View your teammates’ work-in-progress and draw inspiration from it.
- Export ready design specs from final files, which you know are FINAL.
- Restore or reference previous versions.
- Let others know what has changed and why and comment on your work.
- View the entire version history, including decision-making notes.
Version control comparison
Not all tools are created equal when it comes to version control. Compare Plant and Abstract’s approaches:
App vs Plugin
Abstract is an app with a web version, which means you will have to bring your entire workflow into Abstract. However, if you work in Sketch, there will be an Abstract Snackbar at the bottom.
Plant is a Sketch plugin that plugs into Sketch as soon as you install it. It also has a web-app version.
Syncing
Abstract autosaves your file in the background. It’s especially useful when you work on multiple files, as you can switch between them without worrying about losing your work.
Plant requires you to push and upload changes from Sketch each time you want to save them.
Library management
Abstract allows you to start working on a branch and create sub-branches for your team. In the end, you merge all of them into the Master branch.
Plant, contrary to Abstract, doesn’t have branches or commits. It only shows you a timeline that you can work on by uploading and downloading changes.
Manual Save vs. Auto-save
Abstract lets you save locally and sync your files in the cloud later.
Plant needs you to upload and download your changes.
Review changes
Abstract allows you to review visual and non-visual conflicts inside the app. Or, you can also just merge two branches and keep all your Sketch files in one place.
Plant identifies what has changed inside Sketch by comparing Artboards. You can then send the changes to the web app and view them online.
Review commits with your team
In Abstract, as soon as you’re done working, you change the status of your branch and invite your teammates to comment on it.
Plant doesn’t have local commits. You need to send changes to the web app where your team can contribute by adding annotations.
In the end, your own workflow preferences will determine which tool you choose, but we can all agree that version control system is something we can’t live without.