Git里面的分布式的介紹

Git里面的分布式的介紹

1.什么是分布式和集中式?

分布式:
在不同服務(wù)器上部署不同服務(wù)模塊,然后通過遠(yuǎn)程協(xié)同使用不同服務(wù)器模塊;這類似于司令官模式,軍隊(duì)里的司令官充當(dāng)著發(fā)號指令,給不同軍種分配不同任務(wù)的角色;有了司令官統(tǒng)一協(xié)調(diào)軍種,一切行動聽指揮,那就能打勝仗;如果沒了司令官也能打仗嗎?答案:能;只不過沒有司令官發(fā)號施令,各軍種士兵就容易當(dāng)炮灰;三個(gè)關(guān)鍵詞:司令官,各軍種,打仗;

集中式:
在同一服務(wù)器(也稱為中央服務(wù)器)中部署不同的服務(wù)器模塊,有需要的時(shí)候則統(tǒng)一調(diào)用中央服務(wù)器中的服務(wù)模塊;這類似于學(xué)校圖書館,圖書館承擔(dān)著學(xué)生借書和還書等功能;當(dāng)圖書館關(guān)閉之后,那么學(xué)生就無法再借書或還書了;所以集中的最大的缺點(diǎn)就是當(dāng)中心服務(wù)器出現(xiàn)問題后,其他人的就無法工作了;三個(gè)關(guān)鍵詞:圖書館,學(xué)生,借書或還書;

注意:
不管是分布式還是集中式都沒有去中心化,都有中心模塊;只不過中心模塊所擔(dān)任的職責(zé)不一樣;
分布式中心模塊主要承擔(dān)注冊,分配,協(xié)調(diào)各服務(wù)資源的責(zé)任,它不用實(shí)現(xiàn)各服務(wù)資源功能;
集中式中心模塊主要承擔(dān)是實(shí)現(xiàn)各服務(wù)資源的責(zé)任,也就是所有的功能的實(shí)現(xiàn)都在中心模塊中,其他人要使用某資源只能從中心模塊拿;

2.Git的分布式體現(xiàn)在哪里?

在多人協(xié)作開發(fā)的過程中,Git版本控制工具也有中心服務(wù)器來統(tǒng)一管理和交換不同開發(fā)者之間的代碼;注意,沒有中心服務(wù)器開發(fā)者之間的代碼就不能進(jìn)行交換,所以中心服務(wù)器承擔(dān)的責(zé)任是將各個(gè)開發(fā)者關(guān)聯(lián)起來,統(tǒng)一管理代碼;Git的分布式體現(xiàn)在各個(gè)開發(fā)者在本地電腦上都有個(gè)本地倉庫,在無網(wǎng)絡(luò)的情況下,可以將代碼提交到本地倉庫;然后等網(wǎng)絡(luò)恢復(fù)時(shí),就可以push本地提交的代碼,并與其他開發(fā)者進(jìn)行代碼交換

3.項(xiàng)目開發(fā)場景再現(xiàn)!

項(xiàng)目名稱:XX項(xiàng)目;
領(lǐng)導(dǎo):項(xiàng)目技術(shù)主管—牛主管
參與程序猿:A程序猿,B程序猿,C程序猿;
版本控制工具:Git工具

在公司項(xiàng)目會議上,牛主管:公司來了XX項(xiàng)目新項(xiàng)目了,需要A,B,C這三位程序猿協(xié)作開發(fā)該項(xiàng)目,我今天在服務(wù)器上搭建Git服務(wù)環(huán)境,到時(shí)候給你們分配賬號,然后使用git clone命令克隆git服務(wù)器代碼環(huán)境(如果有代碼,就包括代碼)在你們本地電腦上建立本地倉庫;A,B,C三位異口同聲說:好的;

項(xiàng)目開發(fā)進(jìn)行一段時(shí)間,突然Git服務(wù)器環(huán)境掛了,這3位程序猿慌了,怎么辦?沒了Gi服務(wù)器就不能相互交換代碼了,不知道能不能直接交換(這里的直接交換是指A程序猿直接拉取B程序猿的代碼,不經(jīng)過Git服務(wù)器)?牛主管說:不能,沒有Git服務(wù)器就無法進(jìn)行代碼交換。雖然Git是分布式的,但是它不是去中心化的,各個(gè)開發(fā)者的代碼管理還是需要Git服務(wù)器進(jìn)行統(tǒng)一協(xié)調(diào)的。但是你們本地倉庫還在,你們可以將各自開發(fā)的模塊代碼,提交至你們本地倉庫,注意不要修改同一份代碼文件,防止沖突。等Git服務(wù)器環(huán)境恢復(fù)了再進(jìn)行代碼交換更新;

歷時(shí)一日后,牛主管恢復(fù)Git服務(wù)器環(huán)境,A,B,C根據(jù)自己提交的本地倉庫代碼記錄來push到Git服務(wù)器上;

項(xiàng)目又進(jìn)行了一些時(shí)日,由于甲方突然要求提前交付,項(xiàng)目開發(fā)組就新增了D,E這兩位程序猿進(jìn)行協(xié)助開發(fā);牛主管就在Git服務(wù)器環(huán)境上給這兩位小伙伴又分配了新的Git賬號和功能模塊;一天又一天,項(xiàng)目終于按期交工結(jié)束了......

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 前言:顧名思義,Toolbar就是應(yīng)用的工具欄,是android L引入的新控件, 用來替代ActionBar一個(gè)...
    人間入畫閱讀 10,305評論 6 44
  • 2017-04-22萬維鋼混球的思考 (1) 我想請你親自做個(gè)實(shí)驗(yàn)。找個(gè)特別尖銳的東西,比如一根針,扎自己的手指。...
    背包走走走閱讀 446評論 0 1
  • (1)這個(gè)世道談起“酬賓”、“優(yōu)惠”,到底是個(gè)什么意思呢?那就是先把人“優(yōu)”進(jìn)來,然后再扔出個(gè)大大的站牌,上寫著“...
    南山青閱讀 95評論 0 1
  • 周老師真是個(gè)好人,她今天給我的工作是糾正普通話的發(fā)音,竟然把我多年沒找出的毛病找出來了,我最大的問題是前后鼻音不分...
    穆建園閱讀 194評論 0 0
  • 在可以將一件小事惦記幾個(gè)月的年齡,卻總怕以后會忘記某些人、某些事。因此,即便只是雞毛蒜皮的事,也會滿滿當(dāng)當(dāng)?shù)赜涗浽?..

友情鏈接更多精彩內(nèi)容