我正在研究和學習分佈式版本控制系統的基礎知識,特別是Git。在觀看關於Git的Linus' Tech Talk之後,我有幾個問題我沒有完全理解。需要注意的是,我來自SVN,基於Windows的背景,所以我的所有問題都是從該環境構建的。關於Git的一些(基礎)問題和說明
如何合併到其他人的分支處理?也就是說,Joe和Jane都是從主管/主管分支出來的,而Joe想合併Jane在分支中所做的更改,這是如何完成的?爲了讓我的問題更具體 - 如果喬在阿根廷,簡在俄羅斯,這是如何完成的?每個Git分支是否都有一臺能夠完成這些任務的服務器?或者是一箇中央服務器仍然負責跟蹤所有當前分支機構和他們居住的地方? Git如何知道所有這些(可能有數千個)分支機構在哪裏生活? (特別是在Windows環境下!)
Linus談到沒有備份,說這是不必要的,因爲每個人都有他的代碼副本。但是,如果他克隆一個存儲庫,做幾十行更改,提交,但不會推送......如果他的機器死亡,他是否不會損失所有的更改?我認爲我正確理解這個概念(所有提交本地直到被推),但他似乎對這個問題非常討厭,所以我很好奇。