Getting Started with Git (1. History)

Source: Internet
Author: User
Tags file copy version control system

Getting Started with Git (1. History)

Getting Started with Git (2. Basics)

Getting Started with Git (3. File operations)

Getting Started with Git (4. Submission and history)

Getting Started with git (5. Branch)

Getting Started with Git (6.repo)

Version control

Version control what has not been said, is to record our changes to files, directories or engineering history, easy to view the change history, backup to restore the previous version, multi-person collaboration ...

First, the original version control

The most primitive version control is purely manual version control: Modify the file, save the file copy. Sometimes lazy, save the copy when the name is more casual, long time do not know which is new, which is old, even if you know the new and old, may not know what the content of each version, relative to the previous version of what has been modified, when a few versions of the past, it is likely that the following look:

650) this.width=650; "class=" Confluence-embedded-image "src=" http://wiki.sankuai.com/download/attachments/ 326719775/image2015-8-17%2013%3a17%3a10.png?version=1&modificationdate=1439788768000&api=v2 "Style=" margin:0px 2px;padding:0px;border:0px; "alt=" Image2015-8-17%2013%3a17%3a10.png?versio "/>

Second, local version control

Manual management is cumbersome and confusing, so there is a local version control system, log files each time the update, you can take a snapshot of each version, or record the patch file. such as RCS.

650) this.width=650; "class=" Confluence-embedded-image "src=" http://wiki.sankuai.com/download/attachments/ 326719775/image2015-8-17%2013%3a17%3a25.png?version=1&modificationdate=1439788768000&api=v2 "Style=" margin:0px 2px;padding:0px;border:0px; "alt=" Image2015-8-17%2013%3a17%3a25.png?versio "/>

Three, centralized version control

However, the local version control system is biased towards personal use, or multiple users must use the same device, if more people need to collaborate is not easy to do, so, centralized version control system (centralized version controls systems, referred to as CVCS) came into being, Like Subversion,perforce.

In CVCs, all version data is saved on the server, and people working together update or upload their own changes from the server.

650) this.width=650; "class=" Confluence-embedded-image "src=" http://wiki.sankuai.com/download/attachments/ 326719775/image2015-8-17%2013%3a17%3a45.png?version=1&modificationdate=1439788768000&api=v2 "Style=" margin:0px 2px;padding:0px;border:0px; "alt=" Image2015-8-17%2013%3a17%3a45.png?versio "/>

However, all version data exists on the server, the user's local device is only the version of the previous synchronization, if not connected, users can not see the historical version, can not switch version verification issues, or work in different branches.

Moreover, all data is stored on a single server, there is a great risk that the server will be corrupted, so that all the data will be lost, of course, can be backed up regularly.

Iv. Distributed version Control

For the above shortcomings of CVCs, a distributed Versioning system (distributed version control systems, referred to as DVCS) appears, such as Git,mercurial.

Instead of copying a snapshot of the specified version, Dvcs synchronizes all repository repositories locally so that all version history can be viewed locally, and can be submitted offline locally, simply by pushing to the appropriate server or other user at the time of networking. Since each user is saving all the version data, all data can be recovered as long as there is no problem with a user's device.

650) this.width=650; "class=" Confluence-embedded-image "src=" http://wiki.sankuai.com/download/attachments/ 326719775/image2015-8-17%2013%3a18%3a5.png?version=1&modificationdate=1439788768000&api=v2 "Style=" margin:0px 2px;padding:0px;border:0px; "alt=" Image2015-8-17%2013%3a18%3a5.png?version "/>

This, of course, increases the footprint of the local storage space.

--------------------------------------------attachment is the whole content--------------------------------------------------------

Version control. doc

----------------------------------------------reprinted from----------------------------------------------------------------------

Http://www.cnblogs.com/angeldevil/p/3238470.html


Getting Started with Git (1. History)

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.