公司常見的源代碼管理工具 - Git、SVN、CVS基本原理以及區別簡介

往期文章:
1、公司常見的源代碼管理工具 - Git、SVN、CVS基本原理以及區別簡介
2、最新GitHub新手使用教程(Windows/Linux Git從安裝、配置到使用)—詳細圖解
3、GIT常用命令超全整理
4、GitHub與GitLab的區別以及GitLab的搭建與使用
5、Git入門必看書籍推薦 - Pro Git

當一個項目有多人協同完成,必然要使用到源代碼管理工具,介紹常見的管理工具的基本原理與環境;

一、三種源代碼管理工具:其中git爲分佈式管理架構,SVN、CVS爲集中式管理架構

在這裏插入圖片描述

二、git於SVN的簡單對比

無論學習還是使用上,git比SVN更加複雜,很多概念需要去理解;
在這裏插入圖片描述

三、集中式和分佈式版本控制系統的區別

先來兩張圖:

集中式版本控制系統原理:

在這裏插入圖片描述

集中式版本控制系統解析:

  集中式版本控制系統,版本庫是集中存放在中央服務器的,工作的時候,用的是自己的電腦,所以,我們首先需要從中央服務器上拉取最新的版本,然後開始工作,等工作完了,再把自己的工作提交到中央服務器。在這裏借用廖雪峯老師的一個比喻,中央服務器好比是一個圖書館,你要改其中的一本書,必須先要從圖書館裏把書借出來,然後更改,改完之後,再放回圖書館。集中式版本控制系統的一個最大毛病就是必須聯網才能工作,所以對於網絡環境比較差的情況使用集中式版本控制系統是一件比較讓人頭疼的事情。

分佈式版本控制系統原理:

在這裏插入圖片描述

集中式版本控制系統解析:

  分佈式版本控制系統沒有中央服務器的概念,我們使用相關的客戶端提取的不只是最新的文件,而是把代碼倉庫完整地鏡像下來,相當於每個人的電腦都是一個完整的版本庫,這樣的話,任何一處協同工作的服務器出現故障,都可以用任何一個鏡像出來的本地倉恢復。並且,即便在網絡環境比較差的情況下也不用擔心,因爲版本庫就在本地電腦上。

兩種管理模式對比

1、集中式管理模式是:
  a、拉取代碼:遠程電腦版本完全覆蓋本地電腦版本;
  b、提交代碼:本地電腦版本完整覆蓋遠程電腦版本;
2、分佈式管理模式是:
  a、拉取代碼:遠程電腦版本智能識別(對比更改記錄),將差異歸併到本地電腦版本(前提是同一個模塊,變動修改不能衝突);
  b、提交代碼:本地電腦版本智能識別(對比更改記錄),將差異歸併到遠程電腦版本(前提是同一個模塊,變動修改不能衝突);

個人總結

1、分佈式版本控制系統下的本地倉庫包含代碼庫還有歷史庫,在本地就可以查看版本歷史;並且可以隨時切換;
2、而集中式版本控制系統下的歷史倉庫是存在於中央倉庫,每次對比與提交代碼都必須連接到中央倉庫;
3、多人開發時,如果充當中央倉庫的Git倉庫掛掉了,任何一個開發者都可以隨時創建一個新的中央倉庫然後同步就可以恢復中央倉庫;
4、git還有還有tag(快照)、branch(分支)等方便協同開發的操作;

四、SVN的基本操作於環境配置:

1、基本操作:
在這裏插入圖片描述
2、環境配置:
在這裏插入圖片描述

五、Git的基本操作於環境配置:

1、git工作原理1
在這裏插入圖片描述
2、git工作原理2
在這裏插入圖片描述
3、git工作流程
在這裏插入圖片描述

4、git的使用環境
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章