GIT 和 SVN的區別

2021-08-15 01:32:14 字數 682 閱讀 7672

最核心的區別:git是分布式,而svn不是(集中式版本庫或伺服器)。

git把內容按元資料方式儲存,而svn是按檔案:

所有的資源控制系統都是把檔案的元資訊隱藏在乙個類似.svn,.cvs等的資料夾裡。如果你把.git目錄的體積大小跟.svn比較,你會發現它們差距很大。因為,.git目錄是處於你的機器上的乙個轉殖版的版本庫,它擁有中心版本庫上所有的東西,例如標籤,分支,版本記錄等。

git的內容完整性要優於svn:

git的內容儲存使用的是sha-1雜湊演算法。這能確保**內容的完整性,確保在遇到磁碟故障和網路問題時降低對版本庫的破壞。這裡有乙個很好的關於git內容完整性的討論 –

git分支和svn的分支不同:

分支在svn中一點不特別,就是版本庫中的另外的乙個目錄。如果你想知道是否合併了乙個分支,你需要手工執行像這樣的命令svn propget svn:mergeinfo,來確認**是否被合併。感謝ben同學指出這個特徵。所以,經常會發生有些分支被遺漏的情況.

然而,處理git的分支卻是相當的簡單和有趣。你可以從同乙個工作目錄下快速的在幾個分支間切換。你很容易發現未被合併的分支,你能簡單而快捷的合併這些檔案。

git沒有乙個全域性的版本號,而svn有:

Git和SVN的區別

如果你之前一直在使用svn來進行版本控制的操作,如果你還沒有機會試試git,我想你現在應該先了解一下它。git不僅僅是乙個版本控制系統,它也是乙個內容管理系統 cms 工作管理系統等。如果你是乙個具有使用svn背景的人,你需要做一定的思想轉換,來適應git提供的一些概念和特徵。所以,這篇文章的主要目...

SVN和GIT的區別

1.git是分布式的,svn不是 這是git和其它非分布式的版本控制系統,例如svn,cvs等,最核心的區別。如果你能理解這個概念,那麼你就已經上手一半了。需要做一點宣告,git並不是目前第乙個或唯一的分布式版本控制系統。還有一些系統,例如bitkeeper,mercurial等,也是執行在分布式模...

Git和SVN的區別

git和svn都是 管理系統,總結了下兩者的區別 git是分布式的,每個人在本地都可以一次或多次提交 到自己的庫,在合適時間在提交到主庫。而svn是集中式的,一提交就是到主庫 git分支可以只自己見 未push前 svn新建的分支所有人可見 git分布式可以離線開發,svn不行,當 伺服器故障時,s...