GIT → 02: Git and Svn compare

2.1 SVN Introduction

2.1.1 SVN Profile

SVN belonging to a centralized version control management system, the server saves different versions of all files, and co-workers by connecting svn server, extract the latest documents submitted to obtain updates. The original intention of the Subversion project to replace the open source community in those days the most popular version control software CVS, there are a lot of improvement but also to better address some of the deficiencies CVS system on the basis of the function of CVS.

2.1.2 SVN flowchart showing basic interaction

 

 

2.1.3 SVN shortcomings

Centralized management to some extent to see what other developers, and administrators can easily grasp each person's development rights. But compared to its advantage, the centralized version control tools shortcomings are obvious:

Server must be connected to a single point of failure on the SVN server, or can not submit, contrast, reduction, etc.

2.2 Git Introduction

2.2.1 Git Svn and recording specific differences
  • The main difference between Git and other version control systems is that, Git only care about the whole file has changed. The SVN version control systems such differences only concern specific contents of the file.
  • Such systems have each recorded SVN which files have been updated, and are updated what exactly which rows. However, Git does not store data difference before and after these changes.
  • In fact, Git more like a change of the file as a snapshot, record a miniature file system. Every time you commit update, it will be an overview of what all your files (Hash value) and make a snapshot file, and then save the index points to a snapshot. To improve performance, if the file has not changed, Git will not be saved again, but only to the last saved as a snapshot link.
What are the advantages 2.2.2 Git
  • Distributed, emphasizing the individual
  • Public pressure on the server and the amount of data that will not be too big
  • Work offline, everyone's local warehouse, most of the operations at the local library is completed, do not need networking (SVN can not do)
  • Branch operation is very fast and smooth (highlights)
  • May regret it later, add the data as much as possible rather than delete or modify data (deletion or modification is not easy to recover, and every time you add a version, version history has)
  • Speed, flexibility, the ability to efficiently manage Linux-like
  • Ultra-large-scale projects like the kernel (speed and data volume)
2.2.3 Git historical development
  • Like many of life's great events, Git was born in a highly innovative era of large-scale disputes.

The beginning linus (Lynas) I manually merge code, Linux open-source project with developers from around the world to participate in the vast majority of Linux maintenance work is spent submitting patches and save the archive tedious affairs (1991--2002 years ).

  • By 2002, the Business Software Bitkeeper semantics for humanitarian spirit, licensed to use linux for free, is not required to crack. So the whole project team began to enable distributed version control system BitKeeper to manage and maintain the code.
  • By the year 2005, when, linux community developers trying to crack BitKeeper protocols, but the company was found, so the company developed BitKeeper business relationship with the end of the open-source Linux kernel community, they recovered the power of free use of BitKeeper.

This has forced the Linux open source community (especially Linux founder Linus) have to learn, so Linus own use C language to develop a version control system of their own, and will not repeat the same mistakes. Git main program only made two weeks, one month after the linux system code is managed by git.

  • In 2008, the line on Github, a lot of open-source software on Github for publication: Linux, Android, jQuery, Ruby, PHP, vue.js ... at present the number of projects using Git also has exceeded the number of warehouse use SVN.

Guess you like

Origin www.cnblogs.com/BalmyLee/p/11767044.html