SVN與Git的最主要的區別

2021-09-12 01:59:45 字數 845 閱讀 5949

一、svn是什麼?

svn是集中式版本控制系統,版本庫是集中放在**伺服器的,而工作的時候,用的都是自己的電腦,所以首先要從**伺服器**得到最新的版本,然後幹活,幹完後,需要把自己做完的活推送到**伺服器。

二、git是什麼?(git是目前世界上最先進的分布式版本控制系統)

git是分布式版本控制系統,那麼它就沒有**伺服器的,每個人的電腦就是乙個完整的版本庫,這樣,工作的時候就不需要聯網了,因為版本都是在自己的電腦上。

1) 最核心的區別git是分布式的,而svn不是分布的。

2)git把內容按元資料方式儲存,而svn是按檔案:因為,.git目錄是處於你的機器上的乙個轉殖版的版本庫,它擁有中心版本庫上所有的東西,例如標籤,分支,版本記錄等。.git目錄的體積大小跟.svn比較,你會發現它們差距很大。

3) git沒有乙個全域性版本號,而svn有:目前為止這是跟svn相比git缺少的最大的乙個特徵。

4) git的內容的完整性要優於svn: git的內容儲存使用的是sha-1雜湊演算法。這能確保**內容的完整性,確保在遇到磁碟故障和網路問題時降低對版本庫的破壞。

5) 版本庫(repository):svn只能有乙個指定**版本庫。當這個**版本庫有問題時,所有工作成員都一起癱瘓直到版本庫維修完畢或者新的版本庫設立完成。

6)分支(branch)在svn,分支是乙個完整的目錄。且這個目錄擁有完整的實際檔案,而 git,每個工作成員可以任意在自己的本地版本庫開啟無限個分支。

最後總結一下:

svn的特點是簡單,只是需要乙個放**的空間就可以。

git的特點版本控制可以不依賴網路做任何事情,對分支和合併有更好的支援(當然這是開發者最關心的地方),不過想各位能更好使用它,需要花點時間嘗試下。

SVN與Git的最主要的區別?

說起git自然想到svn,我剛接觸到的版本控制工具是svn,svn是集中式版本控制系統,版本庫是集中放在 伺服器的,幹活的時候,先要從 伺服器 得到最新的版本,幹完活後,需要把自己做完的活推送到 伺服器。伺服器就好比是乙個相簿,你要改一本書,必須先從相簿借出來,然後回到家自己改,改完了,再放回相簿。...

SVN與Git的最主要的區別?

說起git自然想到svn,我剛接觸到的版本控制工具是svn,svn是集中式版本控制系統,版本庫是集中放在 伺服器的,幹活的時候,先要從 伺服器 得到最新的版本,幹完活後,需要把自己做完的活推送到 伺服器。伺服器就好比是乙個相簿,你要改一本書,必須先從相簿借出來,然後回到家自己改,改完了,再放回相簿。...

SVN與Git的最主要的區別?

說起git自然想到svn,我剛接觸到的版本控制工具是svn,svn是集中式版本控制系統,版本庫是集中放在 伺服器的,幹活的時候,先要從 伺服器 得到最新的版本,幹完活後,需要把自己做完的活推送到 伺服器。伺服器就好比是乙個相簿,你要改一本書,必須先從相簿借出來,然後回到家自己改,改完了,再放回相簿。...