1. 程式人生 > >何為集中式版本控制系統與分散式版本控制系統?

何為集中式版本控制系統與分散式版本控制系統?

什麼是集中式版本控制系統分散式版本控制系統?

    集中式版本控制系統:版本庫是集中放在中央伺服器的,當我們實際工作的時候,用的都是自己的電腦,所以首先要連線中央伺服器,從那裡得到最新的版本,然後編寫或者更改程式碼,幹完後,需要把自己做完的活推送到中央伺服器。集中式版本控制系統是必須聯網才能工作,如果在區域網還可以,頻寬夠大,速度夠快,如果在網際網路下,如果網速慢的話,就很鬱悶了。
     分散式版本控制系統:對於搞過大資料(Hadoop)或者大型資料庫的朋友,對"分散式"這個概念一定很熟悉了,在此不做過多的解釋。與集中式版本控制系統相比,分散式版本控制系統沒有中央伺服器的。每個人的電腦就是一個完整的版本庫,這樣,工作的時候就不需要聯網了,因為版本都是在自己的電腦上。既然每個人的電腦都有一個完整的版本庫。那問題來了,如何進行多個人專案開發協作呢?比如說某人在電腦上修改了檔案A,同時其他人也在電腦上改了檔案A。這時,你們兩之間只需把各自的修改推送給對方,就可以互相看到對方的修改了。            
如果你用過SVN與Git,不難得出一個結論:

    SVN屬於集中式版本控制系統,而Git屬於分散式版本控制系統

    囉嗦了這麼多,希望能夠幫助一些存在疑惑的朋友,如果有什麼問題,歡迎交流!