It is also interesting to say that the reason I originally contacted Git is not to learn git itself version control technology, but to learn computer English, in order to be able to exercise the ability to learn the original English video, so from the Lynda above download a git series of English video tutorial, This is where Git's journey begins.
I've been in touch with git before, but it was just dragonfly water, and I didn't get a deep understanding. What I'm going to do next is to share with you some of the experiences and experiences of git, and sharing is a more effective way to learn.
The way I learn git is mainly done in the following three ways: Lynda git video. GIT official manuals and other reference documents. Actual operation.
Because of the excellent features of git itself and the limitations of CVS,SVN, many companies are now starting to switch to git. So learning git is a trend, keeping up with the trend of the times.
Speaking of version control, I believe everyone is not unfamiliar, the simplest version control for example, we often use CTRL + Z and CTRL + Z. The core of version control is tracking changes. To be able to understand git from a macro, we need to understand the history of versioning in a nutshell. The process by time is as follows:
Source Code Control System (SCCS) Revision control System (RCS) Concurrentversionssystem (CVS) Apache Subversion (SVN) BitKeeper SCM Git
More readers are familiar with CVS and SVN, which are centralized versioning systems (centralized version control system) CVCS, which effectively solves the collaborative work of developers on different systems. Different people are working directly towards the Central library .
Git is a distributed versioning system (distributed version control systems) DVCS. The Dvcs feature is that all warehouses are full mirrors, further explaining that if a version control server fails, then we can use any one of the local repositories to recover.
As shown above, if the server computer fails, we can perform a full recovery from ComputerA or Computer B. It is no longer a snapshot of the latest version of the file, This is a complete image of the original repository. This is just one of many features of distributed versioning. Compare the centralized version control system such as SVN, and if the central server fails, no one can commit or update it during a failure.
Distributed version control system in addition to git, there are mercurial,darcs and so on.
The above and everyone together from the point of view of the version control system git, in the next article will lead you to play a game of git, take you quickly to create a repository.