4 ms·
I think the main advantage here is the designer doesn't need to learn git, they just work away on a Dropbox folder without knowing it's a git repository. Additi
by rodh257 16y ago
I think the main advantage here is the designer doesn't need to learn git, they just work away on a Dropbox folder without knowing it's a git repository. Additionally, the main git repository doesn't need to be in dropbox, just the designers remote.
- danieldk 16y agoAs someone else in this thread mentions, I think version management is becoming indispensable for the modern designer, and also feasible given the prevalence of vector graphics. Besides that, there are some great, easy to use git clients (Tower, GitBox, SmartGit). I have non-CS colleagues who adopted git in no-time with SmartGit (for LaTeX documents).
- gigawatt 16y ago> and also feasible given the prevalence of vector graphics. As a designer who has had git on his "To Learn" list for way too long, can you explain what you mean by this?
- natrius 16y agoVersion control systems work best when they're dealing with files made up of lines of text. Bitmap images don't have this property, but vector graphics usually do.
- danieldk 16y agoIt's twofold: 1. (x)diffs of binary files are usually more expensive than text files. For instance, consider a git-tracked bitmap image where you apply a global filter. If you add the revised image, and every pixel was touched, this will usually result in a large diff. So, git will either store the large diff, or the modified file completely. If you, on the other hand use SVG with filter effects, the application of a filter will just add a few lines of text to an SVG file. This gives a small diff, meaning that the object can be stored compactly. 2. In the SVG scenario, you could easily spot the changes between both revisions of the image with a 'git diff' (since both files are plain-text). In the bitmap scenario, you can only spot the differences visually.
- gigawatt 16y agoAh, so it's a file-size issue. Thanks to both of you for explaining.
- marcomonteiro 16y agoGit, like most versioning systems works by adding a file to a repository. Then subsequent changes are added to the repository by saving only what has changed in the file. In the case of a bitmap image think of a grid made up of pixels. Each pixel is stored on the file as binary data (0's and 1's). Anything that affects that pixel will change it's value in the file. With a vector file there aren't pixels necessarily. The drawing is saved as shapes and those shapes have properties. These shapes and their properties are actually saved as text (sort of like HTML markup). So as the file changes the changes in those various file types are more drastic. With a bitmap there will be greater changes so overall more space is used to store the file and it's history. Also, because it's binary it's difficult to see the changes in the actual file (without opening it in a photo editing program). With a vector file only small amounts of text would be changing and you can literally see the changes in the file and make sense of it. Hope that helps.
- gigawatt 16y agoVery much so, thank you. So it's more how the data is stored and updated in the different kinds of files. I definitely had the basic gist of raster vs. vector, but had no idea how it could affect something like version control in this way. Very interesting.
- marcomonteiro 16y agoYes basically. Your repository could grow faster using binary files but it's still worth it to have a version history. Even if for nothing else other than to be able to see how something evolved.