Git不會主動去作什麼,除非你叫它去作什麼。服務器
由於Git不會主動作什麼,因此你能夠對你的文件夾作不少不少更改。直到你認爲能夠「保存」爲止。網絡
每份「保存」在Git裏叫作「版本」。
每份「保存」在Git裏叫作「版本」。(由於很重要因此說兩次。)分佈式
假定你如今在一個小型網絡裏幹活,網絡裏有你和幾個同事,還有一臺服務器。
假定你如今在一個小型網絡裏幹活,網絡裏有你和幾個同事,還有一臺服務器。it
若是Git是「集中式」。效率
每次工做,你只會從服務器得到一個版本(通常是最新的,按你的需求能夠得到舊的)程序
你是被動的
由於須要等待服務器返回版本。上傳版本時,也須要等待服務器徹底接收。文件
要是服務器掛了,你和你的同事就沒辦法再得到其餘版本。
若是這時你須要用到其餘版本,你不得不中止工做,等待服務器復活。(明顯這樣很差。)工作
因此Git是分佈式的!上傳
你、你的同事、服務器都會擁有文件夾的全部版本。版本
你如今是主動的!
由於你擁有所有版本。
因此不管你作什麼,你只需從本地得到版本,而不是從服務器得到版本。
你修改的版本,還必須和你的同事的版本合併。
你能夠直接和同事合併。可是一旦同事多起來,這效率會明顯降低。
因此最好仍是要一臺服務器做爲中心,來合併全部版本,提升效率。
哪怕服務器掛了,只會令合併同事的版本變麻煩一點,而不會再中止工做。
(這就是分佈式)