更新時間:2022-06-06 09:41:22 來源:動力節點 瀏覽915次
集中式
版本庫是集中存放在中央服務器的,工作的時候,使用自己的電腦,要先從中央服務器取得最新的版本,然后開始工作,結束后,再把自己的變更推送給中央服務器。
示例圖:
缺點是必須聯網才能工作,操作時每一步都需要和服務器交互數據,對網絡帶寬要求很高,文件過大時速度很慢
分布式
分布式版本控制系統本身沒有“中央服務器”,每個人的電腦上都是一個完整的版本庫。
和集中式版本控制系統相比,分布式版本控制系統的安全性要高很多,因為每個人電腦里都有完整的版本庫,某一個人的電腦壞掉了不要緊,隨便從其他人那里復制一個就可以了。
在實際使用分布式版本控制系統的時候,其實很少在兩人之間的電腦上推送版本庫的修改,因為可能你們倆不在一個局域網內,兩臺電腦互相訪問不了,也可能今天你的同事病了,他的電腦壓根沒有開機。因此,分布式版本控制系統通常也有一臺充當“中央服務器”的電腦,但這個服務器的作用僅僅是用來方便“交換”大家的修改,沒有它大家也一樣干活,只是交換修改不方便而已。
示例圖:
區別
以 SVN(集中式),GIT(分布式)舉例
集中式(SVN) | 分布式(Git) | |
---|---|---|
是否有中央服務器 | 有。開發人員需要從中央服務器獲得最新版本的項目然后在本地開發,開發完推送給中央服務器。因此脫離服務器開發者是幾乎無法工作的 | 沒有中央服務器,開發人員本地都有 Local Repository |
網絡依賴 | 必須要聯網才能工作,而且對網絡的依賴性較強,如果推送的文件比較大而且網絡狀況欠佳,則提交文件的速度會受到很大的限制 | 分布式在沒有網絡的情況下也可以執行commit、查看版本提交記錄、以及分支操作,在有網絡的情況下執行 push 到 Remote Repository |
文件存儲格式 | 按照原始文件存儲,體積較大 | 按照元數據方式存儲,體積很小 |
是否有版本號 | 有 | 沒有 |
文件存儲格式 | 按照原始文件存儲,體積較大 | 按照元數據方式存儲,體積很小 |
分支操作的影響 | 創建新的分支則所有的人都會擁有和你一樣的分支 | 分支操作不會影響其他開發人員 |
提交 | 提交的文件會直接記錄到中央版本庫 | 提交是本地操作,需要執行push操作才會到主要版本庫 |
以上就是關于“版本控制器的分類”的介紹,大家如果對此比較感興趣,想了解更多相關知識,不妨來關注一下動力節點的Java在線學習,里面的課程內容細致全面,從入門到精通都有,很適合沒有基礎的小伙伴學習,希望對大家能夠有所幫助哦。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習