最佳的版控系統方案應該是不存在的,正解是根據專案狀況選擇最適合的就是最佳的。
最早的版控是檔案取出與存回,可以透過FTP或SMB的方式進行。但實際這不能叫做版控,只能鎖定檔案避免另一個人蓋台,但阻止不了自己蓋台的悲劇。
真正進入版控開始是集中式版控,經典代表CVS與SVN,集中式的缺點,當沒有網路可連線到伺服器,就無法作業,因此有了分散式版控,經典代表就是GIT,有關版控演化說明可以參考這篇。
GIT作為主流分散版控代表,每個客戶端都可以當作是伺服器的備份,這種去中心化的分散運算作法,就是一種區塊鏈,跟邊緣運算又有那麼一點相似。
但話說回來,通常會用到版控,往往是有多個人在寫CODE,大家都各自分工,必定要同步,因此就有GitLab的出現,提供一個管理平台讓團隊可以交換。
最適方案是什麼?相信GitLab會滿足大部分專案需求。