Graphic designer Sergey Khilkov shared his solution for storing versions of design project files, and also compared 5 popular services that can do this automatically.
Smart people said that nowadays it is wrong to duplicate files manually, creating a version archive, but you need to use modern technologies Git, Subversion and the like. In this post I will write about the system I came to and now I use it with pleasure.
There are many solutions for saving file versions. For me, as a designer, the key parameters are the following parameters that the system must meet:
1. I myself must determine at what point to create a file restore point;
2. Be able to see what has changed in the file (most often in the graphic);
3. Upload the file and its versions to the online storage;
4. Receive unlimited storage period for files and their versions;
5. Privacy. To the data, without my knowledge, strangers should not have access;
6. Low cost.
Yes, don’t be surprised. I didn’t know, but Dropbox can keep the history of file changes. A very convenient solution for storing and accessing files from anywhere in the world. It is easy to share materials and you do not need to think about downloading them, you just need to install an application that will upload files and their editing history by itself. But this plus is also a minus, tk. new versions of files are created automatically after each save.
Secondly, you cannot compare what exactly has changed in the file without rolling it back. Without the purchase of the optional “Extended Version History” (EVN), which costs $ 40 a year, files are only kept for 30 days. They give 2 GB for free, the rest for a monthly payment from $ 8.25. We get a minimum of $ 140 per year and not full compliance with the requirements. Let’s go further.
All the same advantages and disadvantages as Dropbox. But in Google Drive, versions are not stored for more than 30 days, in principle, which is unacceptable. Skip it right away.
Second discovery I made while preparing this post (thanks to Sergey for the tip). A service that is familiar and loved by many designers is still able to store file versions. To do this, you need to use their utility – “Desktop sync app”. You don’t need to pay anything extra.
On the downside, there are no previews for Sketch files and there is no thought out interaction for users who want to use “Inspect Mode”. The point is that for code inspection to work, layouts must be uploaded via the Craft plugin. And then a conflict arises, since the “Desktop sync app” does the same thing, but does not “parse” the layout into its components, so “Inspect Mode” is not available for it. You have to choose between the file version history and the code inspector. Since in our team the code inspector is used by layout designers and programmers – the choice is in favor of Inspect Mode.
Apparently, the most popular subversion solution for Mac. A very beautiful program. Of the minuses – there is no storage in the cloud. You can, of course, place folders with files and backups in the directory of a third-party cloud service, for example Yandex.Disk. But there is a second disadvantage – the cost is $ 69. Not to say that it is very expensive and I was ready to try working with the program (there is a trial period of 14 days), but I noticed another drawback – there is no preview of Sketch files. Let’s take a note, but look for more.
I used this solution before, when I was actively involved in layout. Meets all the requirements that I described above. There is a desktop client, which is important for those who do not know the command line. Private repositories (online storage) are paid, from $ 7 per month. Great option, but not perfect.
I settled on the Bitbucket storage in conjunction with the SourceTree client. I preferred Bitbucket to GitHub for free private repositories. Moreover, I can create as many as I like, and invite up to 5 users to work on the project. If more than 5 users are connected to the repository, then you need to pay from $ 10 per month. All in all, a great offer.
Comparative table of the studied solutions
Now I will tell you how the work process is organized.
First of all, register at bitbucket.org and download SourceTree (Available for Mac and Windows). By the way, SourceTree can also be used as a client for GitHub.
Launch SourceTree and add a new project “New Repository” → “Create Local Repository”.
Select the directory where the project and the archive of its versions will be stored. Since I also save files online, I put the “Also create remote repository” checkbox.
You can not upload files online, but create storage only on your disk, or in the directory of a cloud service. Then you will not depend in any way on either GitHub or Bitbucket.
Now let’s put some file in the created folder. Let it be a Photoshop file hello.psd. After saving the file to a folder in SourceTree, a notification appeared that the directory has changed, and on the right is a small preview of the file’s contents.
If the file is larger than 5MB, then the preview will not be shown. For solution open “Preferences” → “Diff”. Set “Size limit (binary)”, for example 50,000 KB. Thumbnails will be created without restrictions.
This will happen after each change of files in the directory or adding new ones.
Let’s create a “Recovery Point” (In Git terminology, this point is called Commit). To do this, mark the files for which the version will be created in the repository (I usually select all), write a comment and press “Commit” to create a restore point.
Done. Now we can always return to this file in this form.
Let’s recolor the title in a different color and save. SourceTree noticed the manipulations and in the preview window it shows 2 images “It was” and “It is now”.
Let’s “commit” the changes and send them to the server.
For the purity of the experiment, let’s make a third edit by sending it to the server as well.
Need to roll back to the first version of the file or grab a couple of layers from there? Let’s try. Let’s go to the sidebar of the program in the “History” tab and select the first commit. If you double-click on the preview, the first version of the file will open in Photoshop. Take any layers from it or resave it as the main file. It is very convenient and simple.
I have described the basic functionality that Git technology provides. There is a lot more, but even with this functionality, you don’t have to worry about the safety of working files and their iterations.
Author: Sergey Khilkov