集中式 vs 分散式

版本控制也有分集中式跟分散式,了解這兩個差異,是重要的事

集中式管理

當版本控制系統開始出現時,開發團隊中開發者之間合作的方式,是共用同一個「檔案庫(repository)」,無論這個檔案庫是在同一部工作站,或可透過網路存取的檔案系統上的本地端檔案庫,還是透過一個特定的通訊協定可以存取的遠端檔案庫,所有的成員都是共同存取同一份檔案庫

集中式的版本控制系統其實有三大重點,即同步、追溯、以及檔案的備份。

透過網路可連結的主機之上,開發者想要自檔案庫中取得資訊或檔案、想要將檔案提交至檔案庫,或是對檔案庫做一些其他的操作,都必須在能夠連網的環境下進行

分散式管理

分散式的版本控制系統和集中式的版本控制系統,最大的差別在於,分散式的版本控制系統的檔案庫允許不只一份,事實上,每個開發者都可以在自己的一部或多部開發機器上建立檔案庫。 因為每個開發者都可以擁有獨立的檔案庫,所以可以直接對自己的檔案庫進行操作。 開發者不僅可以在離線的環境(例如飛機或高鐵之上)不中斷,連續工作,也可以持續進行修改,一方面獲得版本控制系統的支持(可以管理版本、查詢修改歷史、可以回溯、也可以持續提交寫下記錄訊息、……),另一方面也不需要將自己的修改,持續送至集中的檔案庫上,造成了其他開發者必須套用這些修改,引起可能的不穩定情況。

參考文章 https://www.ithome.com.tw/node/77088

Last updated

Was this helpful?