Ernesto Alonso Montaño Ramírez <ernestoalonso.mr@xxxxxxxxx> writes: > I've a question about Git, can I use this application for design > (architecture, no programming)? for example, controlling the versions > of designs on AUTOCAD, PHOTOSHOP, ILLUSTRATOR, etc; management of > documents... Yes you can use this application. But it depends on your definition of "use" how "useful" the end result would be. The features programmers find helpful by placing their end products (i.e. the source code and text files in general) under control in Git are: 1. You can go back to any arbitrary version. 2. You can inspect what the textual differences between two arbitrary versions A and B (but most often, two adjacent versions) are. This is called "diff". 3. You can take the "textual differences" from 2. and replay the change between A and C on top of another version C, which lets you pretend as if you did the same work you did going from A to B but starting at version C. This is "apply", "merge", "cherry-pick", and "rebase". Using Git (or any version control system) on non-text files, you would still get the same benefit 1., obviously. If the assets you feed Git are not something intelligible as "text" (and I am guessing AUTOCAD, PHOTOSHOP and ILLUSTRATOR files are not), you would not gain 2. or 3. immediately. You however can still gain benefit 2., if you have a way to "compare" two versions of these files in a non-textual way. For example, I do not know AUTOCAD at all, but if the program "autocad" has a mode where it lets you feed two AUTOCAD files and point out how the two are different visually (let's assume there is such a program "autocad-compare" that takes two filename parameters to compare), Git has a way for you to plug into its machinery so that "git diff v1.0 v2.0 -- an-autocad-file" will write out the file at version 1 and version 2 into two temproary files and call out to "autocad-compare tmp1 tmp2" to have them compared. For 3., too, Git has a mechanism to plug in a "merge-driver" of your own, e.g. if you have a version of an AUTOCAD file A that was modified to B by you and modified to C by your colleague and an AUTOCAD program "autocad-merge A B C" is a way to merge the work you two did starting from the same A to produce B and C into a single unified version, then "git merge" can be told to use such an external program as a plug-in to perform the file-level merge. -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html