Git與SVN的區別(集中式VS分布式)

2021-08-26 11:56:02 字數 857 閱讀 5225

原出處:

git是目前世界上最先進的分布式版本控制系統,其實 git 跟 svn一樣有自己的集中式版本庫或伺服器,但是git 更傾向於被使用於分布式模式,也就是每個開發人員從中心版本庫/伺服器上chect out**後會在自己的機器上轉殖乙個跟中心版本庫一模一樣的本地版本庫。可以這樣說,如果你被困在乙個不能連線網路的地方時,你仍然能夠提交檔案,檢視log(歷史版本記錄),建立專案分支等。

git 和 svn的主要差別:

個人理解:git 並沒有像 svn一樣在每一次提交的時候都將更新的詳細資訊都分析並提交,這是很科學的,因為我們有90%的時候不會閒著要檢視每乙個檔案都做了哪些更新,特別是模組化開發時,那些不是我們開發的模組,因為git 會在本地儲存完整的歷史版本庫,有十個使用者共同開發就會有十份這樣的庫,這樣做的話會會出現非常多冗餘的資料。但是在svn 上這樣還是科學的,因為只有svn 伺服器上儲存著唯一的乙份歷史版本庫,當然是越詳細越好了。但是當遇到那10%的時候,我們想要檢視一下某個檔案的與昨天的版本相比的更新變動資訊,git 會取出一天前的快照和當前檔案作一次差異運算,顯示出更新變動資訊。

分支是什麼:

專案開發中什麼時候需要建立乙個分支:

舉個例子:我們需要開發乙個新的**,我們已經在主分支(master分支)上開發出了1.0發布版本,這個時候我們需要開發某個新的功能模組,那就需要建立乙個分支(dev分支),而不是在主分支上繼續開發,這樣做有兩個好處:

我可以在git的任意乙個提交點(commit point)開啟分支!(其中乙個方法是使用gitk –all 可觀察整個提交記錄,然後在任意點開啟分支。)

git具有以下特點:

git 的缺點:

Git 與 SVN的區別(分布式 VS 集中式)

區別 1 git分布式,svn集中式 集中式系統,只有乙個 版本庫,一旦故障,影響全部,成員工作必須依靠網路,但資源集中 分布式系統,成員都可以是 庫,工作不需要網路 2 git只關心檔案資料的整體是否發生變化,而svn則關心檔案內容的變化。例 svn每次記錄有哪些檔案作了更新,及更新了什麼內容。而...

SVN與Git比較(集中式VS分布式)

一 集中式vs分布式 1.subversion屬於集中式的版本控制系統 集中式的版本控制系統都有乙個單一的集中管理的伺服器,儲存所有檔案的修訂版本,而協同工作的人們都通過客戶端連到這台伺服器,取出最新的檔案或者提交更新。subversion的特點概括起來主要由以下幾條 每個版本庫有唯一的url 官方...

Git 集中式VS分布式

集中式版本控制系統 版本庫是集中存放在 伺服器的,而幹活的時候用的是自己電腦,所以要先從 伺服器取得最新版本,然後開始幹活,幹完再把自己的 活推送給 伺服器。集中式版本控制系統最大的毛病就是必須聯網才能工作。分布式版本控制系統 首先,分布式版本控制系統根本沒有 伺服器 每個人的電腦上都是乙個完整的版...