2015-11-19 86 views
-2

這不是Git Vs. SVN問題。這是關於分佈式源代碼控制系統的優勢是否實際上與他們所說的一樣有用。分佈式源代碼控制的優勢是什麼?

根據Wikipedia的優點是:

1)任何規範,默認情況下存在的代碼庫的參考副本;只有工作副本。 2)通用操作(如提交,查看歷史記錄和恢復更改)速度很快,因爲不需要與中央服務器通信。

3)只有在其他對等方之間共享更改時才需要進行通信。

4)每個工作副本有效地作爲代碼庫及其更改歷史的遠程備份,防止數據丟失。

https://en.wikipedia.org/wiki/Distributed_version_control

但是,我拿這個問題。在第2點。是的。提交更快,但維基百科在這裏討論的是承諾本地源代碼控制實例。同步到中央服務器仍然是必要的。也許這可能會安排在後臺運行,但在正常情況下,大多數用戶將同時進行提交和同步。如果他們不這樣做,那麼他們必須規避源代碼管理中最重要的部分之一:備份代碼。第三點遭受同樣的問題。

當網絡連接受限時,分佈式系統據說特別有利。它允許您利用源控制,而無需與其他用戶物理連接到同一網絡。從表面上看,這是有道理的,但我問自己這個問題:我什麼時候會以斷開的方式實際使用源代碼管理?

如果我發現我自己將代碼提交給本地實例,但沒有將代碼同步到中央服務器,我會將自己放在手腕上。這是因爲如果事實上我正在做一個大的,潛在風險的變化,我應該在一個分支中工作並定期向中央實例提交。我不應該依賴本地實例作爲備份,因爲我的計算機可能隨時被破壞,被盜或損壞。定期向中央存儲庫提交對於任何源代碼管理系統都至關重要。

當然,有些時候我可能會說我是一個發展中國家,我無法上網。在這些情況下,分佈式系統是明顯的選擇,顯然是有利的。但是,我想說的是,99%的時間,我或者有互聯網連接,或者只有在互聯網連接可用之前等待很短的時間。這是衆所周知的,是不是分佈式系統只是矯枉過正?除非你真的在沒有良好的互聯網連接的地方工作,否則這不僅增加了系統的複雜性,而且收效甚微?

你有沒有經驗與我的觀點相矛盾?

回答

0

同步到中央服務器仍然是必要的

號它可以偶爾發生或不發生在所有(在「純DVCS」工作方式)

一般情況下大多數用戶將被提交,並在同一時間

斷奶用於同步說話每個人,即使是「最」。每個人都有自己的習慣

如果他們不這樣做,他們是必不可少的規避源控制的最重要的部分之一:備份代碼

停止這種狗屎!請記住:本地克隆不是,並且永遠不會取代良好,正確的正確備份。供應鏈管理系統只對源代碼控制,僅此而已

這被稱爲工具,是不是一個分佈式系統只是矯枉過正?

沒有

不只是增加了複雜性的系統沒有什麼好處

沒有

+0

哦男人。你知道,我無法理解人們爲什麼寫這些迴應。我完全知道有各種分佈式系統非常好。我正在發表我的觀點,以便其他人可以將我擊倒,我的觀點會被駁倒。這種態度對於任何人的知識都沒有多大作用。 –

+0

_No。它可能偶爾發生或根本不會發生(在「純DVCS」工作風格中)._那麼很好地啓發我。你爲什麼要這樣工作?你或多或少說每個人都應該照顧自己的備份? _沒有_你說過「不」,但你沒有提出任何建議,爲什麼他們是有利的。 –

+0

也許,其他人傾向於以完全不同的方式使用源代碼管理。也許他們傾向於將自己與中央資料庫隔離開來。也許,其他人傾向於在沒有將他們的代碼放在中央位置的情況下持續數日。但是,如果是這樣的話,那麼我需要聽聽人們爲什麼這樣做。我真的正在考慮從集中式轉向分散式,但是這種態度並不會讓我想要接受它。他們讓我想要靜音整個分佈式版本控制社區。 –