Why GIT ?
And why, really?
Exists a lot of various SCC in particular - ancient CVS, progressive SVN and ideologically similar Mercurial.
They also are free. They have similar functions.
What to understand our choice it would be necessary to compare features of these systems.
CVS - fast, reliable, but unfortunately for a long time does not develop and has not convenient work with branches.
SVN - in difference from CVS, is more progressive and constantly develops. Also developers of SVN have added a atomic commit and have improved work with branches.
But SVN and CVS use the classical 'centralised' structure of the SCC.
In it there are pluses - all data in one place, their administration is simplified,
Working copies have the minimum size, always it is possible to learn who edits these files...
The truth in this structure is a serious lack.
The server with a repository should be constantly accessible and comfort of work with it directly depends on quality of a communication channel. And at technical problems with a server it is very easy to lose the most part of a code and all history of the project.
In this respect absolutely other approach offer Mercurial and GIT. It is the distributed control systems of versions of files.
Here there is not the detached repository, all history of the project is stored directly in a project root.
The successful structure of a data storage increases the size of the working copy of project not considerably.
Also it allows to use new very interesting possibilities.
Let's begin with that -
You can easily carry out almost all operations with files in a "off-line" mode. (Exception are only operations of synchronisation of your and external repository.) That is switching on any branch and/or the version of the project at you will occur instantly and it does not depend on the size of the project. You also can compare versions of files and look blame files without communication with an external repository.
One more important advantage of GIT, is huge reliability of safety of the data.
For SVN or CVS is enough breakage of one computer what to lose all history and the data.
For GIT is enough that one developer saved working copy of project and it can restore repository with history to continue work on the project
We at the given stage use three systems CSS -
CVS stores the most ancient and a little changing projects, we use more for testing of CVSSCC.
SVN at us stores the most part of internal projects.
GIT and Mercury - these systems we use for projects in which developers divided in the big distances and many time zones participate.
You can see, for each issue it is possible to find ideal SCC.
Choose SCC that is necessary for you, and we will make your work with it fast, reliable and comfortable.