Whether you’re part of a small studio or a large agency, there’s one common problem you share—version control.
Keeping files organized and current is something that a lot of people struggle with (I know we have). In last week’s article about our goals for 2018, we mentioned that our team has moved away from Photoshop and made the switch to Sketch. And with this wholistic change, we decided to review our versioning system.
There are many ways to handle this menial task—and some solutions are better than others. As we began our research, it was clear there were several options available to us.
The manual approach to Sketch version control: best practices and naming conventions
This approach is the easiest way to get started with simple version control. It uses a combination of Sketch best practices and file naming conventions. For many teams (ours included) we take advantage of Sketch Libraries. Keeping your symbols in sync is an easy way to assure that everyone is on the same page when they open their design files.
This is all well and good, but it doesn’t solve the problem of overlapping (a.k.a. people working on the same file). We researched this issue a bit and found some good advice. Here’s what we found:
- Always keep a master file on hand to serve as the single source of truth. One person, let’s call them the guard, is responsible for maintaining the master file.
- If a designer needs to work on something, they “check out” the file by making a copy of it and appending their initials to the file.
- When changes are ready to be “merged”, the changes are sent to the guard. They update the master file as they see fit and rename the file to the current version.
- Wash. Rinse. Repeat.
This method works, but it’s tedious and can lead to errors if you’re not diligent about maintaining the master file. This led us to explore another option.
A technical approach to Sketch version control: Git
This one is a little nerdy and requires your designers to explore their development side. Luckily there are some great examples of this work already out in the wild. This article by Andree Huk is a great primer for getting your design team up and running with Git. Again, this gets a little technical, so make sure you know what you’re getting yourself in to before you dive in.
But what if you’re not technical and maintaining a Git repository for your Sketch design files makes you sick to your stomach? Don’t worry, there are a few “designer-friendly” solutions that fit the bill.
Version control that appeals to a designer’s sensibilities
Kactus was born when it’s founder Mathieu Dutour began working on a Git client that would generate pretty diffs right in Sketch. But as Sketch refined it’s process and file structure, so did Mathieu. His code base is still available for folks to use, but he’s since expanded on his work and spun it in to a well-packaged and easy-to-use product called Kactus. It’s definitely worth a look if you haven’t seen it yet.
Abstract made a splash towards the middle of 2017 and continues to gain traction as the go-to app for Sketch version control amongst design teams. Built by an all-star team and already used by the likes of Shopify, GitHub, and Instacart, this beta is bound to turn heads once it launches to everyone.
And then there’s the new kid on the block, Plant. Plant was released in November of 2017 and looks beautiful. They’ve already built out a pretty incredible product, while growing their team at a good clip. Their pricing seems to be on point and they should give Abstract and Kactus a run for their money.
Version control? Who needs it when you have real time syncing and collaboration?
If you’re a designer with your finger on the pulse, you’ve no doubt heard of Figma and Invision Studio.
Figma was built with collaboration in mind. Available on any OS (including in the browser), all work is constantly saved and version history is available to everyone. There’s no need to keep up with it, it just works.
It works so well that their competition is getting in on the act. Invision Studio is due out early this year and promises to have similar version control and syncing features as well.
— InVision (@InVisionApp) November 14, 2017
With a UI like Sketch’s and tons of integrations to their existing suite of apps, we’ll be keeping a sharp eye out for this launch.
What say you?
Are you part of a design team that is looking in to versioning your Sketch files? If so, which tool(s) are you researching to get your folks organized? We’d love to hear your thoughts in the comments!