Versioning in design: how not to get lost in a thousand layouts

- Colleagues, is the project_lastVersion file final? Or project_lastVersion_1?

“… Is this a



familiar situation? I’m so sure, especially when you work in a team with other designers. Usually you have to create several different versions of files, the number of which depends on the project, edits, and other factors, and the headache is figuring out all of these versions.



In the article I will talk about the most relevant and used version control options, namely: Zeplin (+ Sketch), Figma, Abstract (+ Sketch), that is, I will describe the functions and features of these tools related specifically to versioning.







Why version control is important and necessary in design



  1. , , . : , ;
  2. , ( ) , «project1», «project1.1», «project_1», «project1_lastVersion» . ( ), ;
  3. ;
  4. From the previous paragraph, it follows that when working together, it is important to understand who exactly and when made the changes, and what they are.


These are just a few situations where using a version control system can speed up the development process and avoid heart-stopping when it seems like everything is gone. Next, I will talk about the pros and cons of version control tools that I had to deal with in my work.



Zeplin + Sketch



The easiest to use is Zeplin. To work with it, the designer just needs to save the changes in the working Sketch file and export the artboards from Sketch to Zeplin. Artboards will be displayed in Zeplin, they can be grouped into sections, view element styles, download icons, pictures, etc., as well as form a styleguide, which consists of a palette of colors, text styles, distances between elements, components / symbols.



The advantages of using Zeplin are the following:



  1. As stated earlier, ease of use - you just need to export the selected artboard;
  2. Ability to comment on artboards;
  3. Comment notifications that come in the mail and are displayed

    in Zeplin itself;
  4. The ability to create 1 project for free and add as many participants as you need.




Like any tool, Zeplin has its drawbacks:



  1. When changing in Sketch an artboard that was previously exported to Zeplin, you need to pay attention to its name. Artboards of the same name automatically replace each other when exporting, however, if the name of the exported artboard differs from that previously loaded in Zeplin, this artboard is exported to the application as a new one, and will not replace the outdated version. Inattention when exporting artboards can take time to verify that the artboard names match;
  2. Sketch Zeplin , . (), , ( ), , Sketch-, ;
  3. ,

    Zeplin;
  4. , , ;
  5. Zeplin , , Zeplin ;
  6. Sketch Zeplin owner.




Figma



Figma is actively being introduced into the work of designers due to its attractive functionality. This tool is universal - here you can find design, prototyping, and version control.



What can it do in terms of versioning?



  1. Figma supports the simultaneous work of multiple designers on the same project. Having opened the required project, the user can see the names of colleagues who are making edits and viewing the project next to the artboard / individual elements;
  2. Version history (or History Version), so you can see who made changes and when, go back to an earlier version, and edit information about the selected version;
  3. Commenting, component description;
  4. Figma can be used as an application on a PC and in a browser.




Figma has too few disadvantages, but the key ones are:



  1. Version history (the same information about versioning) in a free account is provided only for 30 days;
  2. There are no comparison modes, as, for example, in Abstract.




Abstract + Sketch



Abstract, like Zeplin, works with Sketch, and is intended specifically for versioning,

unlike, for example, Figma.



Abstract has enough advantages:



  1. Collaboration of several designers on one file at the same time;
  2. Cloud storage of files;
  3. Use both as a program installed on MacOS and in a browser

    on any PC;
  4. Synchronized work with team members, which allows you to send the

    changes made to the review. Changes can be accepted or rejected;
  5. Ability to leave comments and annotations, receive notifications about them;
  6. The ability to compare files with each other - Abstract provides 2 comparison modes;
  7. Activity stream, which allows you to see who changed what and when.




Among the disadvantages, I would single out the following:



  1. Paid use. Abstract provides a free trial (only 30 days for use with Sketch) and a 14-day demo for Adobe XD. But this time is enough to get acquainted with the tool, work together with the team and understand whether Abstract is convenient or not;
  2. At the moment, a full version for work is provided only for Sketch + Abstract, that is, it is suitable for MacOS. As mentioned earlier, Abstract is expanding

    to Adobe XD, but so far only a beta version is available.




What to choose for version control



It depends on the tool in which the designer is working on the project. I use both Sketch and Figma in my work. However, having considered 3 different version control options, namely Sketch + Zeplin, Figma, Sketch + Abstract, I find Abstract the most functional, so I will consider versioning in more detail.



Is the Tablet Magic Abstract



Abstract is a kind of GitHub for designers. The principle of operation is that the designer loads a previously created Sketch file into Abstract (this file is a master file, that is, it contains the most relevant artboards / elements and information about the project). Several designers can work on one master file at the same time. To be more precise, each designer works in his own copy (branch) of the master file. When finished, the branch needs to be committed to Abstract. Committing the branch is a must, because this is the only way to save the changes made to the branch and add them to Abstract. The commit will not affect the contents of the master file in any way until the merge occurs (in other words, merge). You can merge not only a branch with a master file, but also a branch with a branch.







In Abstract, as in Zeplin and Figma, you can view element styles, as well as the ability to download used icons and pictures.



In addition, the Properties section shows which style the selected item is currently in the master file, and which style is the same but changed item in the current commit.







A master file can contain multiple artboards. When making edits, all changes are saved in the background. You just need to commit the branch that the designer worked with, and all changes will be reflected in Abstract. Modified artboards or individual modified elements are marked with the Edited icon. Thanks to this, the designer does not need to create a large number of files with different versions of the project, since everything is clearly saved and displayed in one place.







As mentioned earlier, Abstract provides comparison modes.



The first comparison mode is side by side - when the artboard from the master file and the modified artboard from the branch are located next to each other.







The next comparison mode is overlay - when the artboard from the master file and the modified artboard from the branch are superimposed on each other, and all changes are displayed on a white background.







In addition to the above, Abstract has other useful functions, for example, you can synchronize Sketch libraries, create collections - sets of artboards you need to present to colleagues.



The activity stream contains the changes made, comments, creating branches, commits, merges and other updates. It shows who, when and what exactly changed, added, commented, approved or disapproved, merged, etc.







Zeplin, Figma, and Abstract make it faster and easier to work on projects not only for designers, but for all team members. But the most successful, in my opinion, are Figma and Abstract (Abstract to a greater extent due to the functionality and information content in terms of version control). Using them, team members do not need to spend a lot of time on meetings, chat discussions in order to find out what changes have been made to the layouts and where they need to look to see them. Using version control in any form improves collaboration between team members, project understanding and, at best, accelerates development.



In this article, I have considered far from all the existing version control options in design, but the most famous and most commonly used ones. If a team of several designers is working on a project, it is worth considering versioning in Abstract or Figma, and Zeplin is more suitable for single work, when you do not need to collaborate and simultaneously work with other colleagues on the same file. Either way, it doesn't hurt to try each of these tools.



All Articles