久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

Git,、GitHub、GitLab三者之間的聯(lián)系以及區(qū)別

 ontheroad96j47 2021-11-08

在講區(qū)別以及聯(lián)系之前先簡(jiǎn)要的介紹一下,,這三者都是什么(本篇文章適合剛?cè)腴T的新手,,大佬請(qǐng)出門左轉(zhuǎn))

1.什么是 Git?

Git 是一個(gè)版本控制系統(tǒng)。

版本控制是一種用于記錄一個(gè)或多個(gè)文件內(nèi)容變化,,方便我們查閱特定版本修訂情況的系統(tǒng),。

以前在沒有使用版本控制的時(shí)候,我們通常在我們的項(xiàng)目根目錄下這樣命名項(xiàng)目:

project_v1,、project_v1.1,、project_v2等等,通過這種方式記錄我們項(xiàng)目的不同版本的修改,,

有的時(shí)候我們還會(huì)在不同版本的文件中寫一個(gè)說明,,記錄此版本項(xiàng)目新增、修改,,刪除等操作,。

這樣的操作是很繁雜的,有的時(shí)候還可能因?yàn)橐恍┓侨藶橐蛩貙?dǎo)致文件丟失這樣的事故,。

有了版本控制系統(tǒng),,我們就不用再手動(dòng)進(jìn)行一些繁雜的操作,并且對(duì)于文件丟失這種事故我們也不

用再擔(dān)心,,你可以隨便回到歷史記錄的某個(gè)時(shí)刻。

早期出現(xiàn)的版本控制系統(tǒng)有:SVN,、CVS等,,它們是集中式版本控制系統(tǒng),,都有一個(gè)單一的集中管理

的服務(wù)器,保存所有文件的修訂版本,,而協(xié)同合作的開發(fā)人員都通過客戶端連接到這臺(tái)服務(wù)器,,取出

最新的文件或者提交更新。

從網(wǎng)上找了一張圖,,展示一下它們的原理:

而我們的主角 Git 是分布式版本控制系統(tǒng),。Git 已經(jīng)成為越來越多開發(fā)者的青睞,因?yàn)榉植际降膬?yōu)勢(shì)是很顯著的,。

2.說一下集中式和分布式版本控制系統(tǒng)的區(qū)別:

集中式版本控制系統(tǒng),,版本庫是集中存放在中央服務(wù)器的,工作的時(shí)候,,用的是自己的電腦,,所以,我們首先需要

從中央服務(wù)器上拉取最新的版本,,然后開始工作,,等工作完了,再把自己的工作提交到中央服務(wù)器,。在這里借用廖

雪峰老師的一個(gè)比喻,,中央服務(wù)器好比是一個(gè)圖書館,你要改其中的一本書,,必須先要從圖書館里把書借出來,,然

后更改,改完之后,,再放回圖書館,。

集中式版本控制系統(tǒng)的一個(gè)最大毛病就是必須聯(lián)網(wǎng)才能工作,所以對(duì)于網(wǎng)絡(luò)環(huán)境比較差的情況使用集中式版本控制

系統(tǒng)是一件比較讓人頭疼的事情,。

分布式版本控制系統(tǒng)沒有中央服務(wù)器的概念,,我們使用相關(guān)的客戶端提取的不只是最新的文件,而是把代碼倉庫完整

地鏡像下來,,相當(dāng)于每個(gè)人的電腦都是一個(gè)完整的版本庫,,這樣的話,任何一處協(xié)同工作的服務(wù)器出現(xiàn)故障,,都可以

用任何一個(gè)鏡像出來的本地倉庫恢復(fù),。并且,即便在網(wǎng)絡(luò)環(huán)境比較差的情況下也不用擔(dān)心,,因?yàn)榘姹編炀驮诒镜仉娔X

上,。

個(gè)人總結(jié):

(1).分布式版本控制系統(tǒng)下的本地倉庫包含代碼庫還有歷史庫,在本地就可以查看版本歷史

(2).而集中式版本控制系統(tǒng)下的歷史倉庫是存在于中央倉庫,,每次對(duì)比與提交代碼都必須連接到中央倉庫

(3).多人開發(fā)時(shí),,如果充當(dāng)中央倉庫的Git倉庫掛掉了,,任何一個(gè)開發(fā)者都可以隨時(shí)創(chuàng)建一個(gè)新的中央倉庫然后同步就可

以恢復(fù)中央倉庫

從網(wǎng)上找了一張圖,展示一下它們的原理:

3.GitHub 和  GitLab 都是基于 web 的 Git 倉庫,,使用起來二者差不多,,它們都提供了分享開源項(xiàng)目的平臺(tái),

為開發(fā)團(tuán)隊(duì)提供了存儲(chǔ),、分享,、發(fā)布和合作開發(fā)項(xiàng)目的中心化云存儲(chǔ)的場(chǎng)所。

GitHub 作為開源代碼庫,,擁有超過 900 萬的開發(fā)者用戶,,目前仍然是最火的開源項(xiàng)目托管平臺(tái),GitHub 同時(shí)

提供公共倉庫和私有倉庫,,但如果使用私有倉庫,,是需要付費(fèi)的。

GitLab 解決了這個(gè)問題,,你可以在上面創(chuàng)建私人的免費(fèi)倉庫。

GitLab 讓開發(fā)團(tuán)隊(duì)對(duì)他們的代碼倉庫擁有更多的控制,,相比較 GitHub , 它有不少特色:

(1) 允許免費(fèi)設(shè)置倉庫權(quán)限;

(2) 允許用戶選擇分享一個(gè) project 的部分代碼,;

(3) 允許用戶設(shè)置 project 的獲取權(quán)限,,進(jìn)一步提升安全性,;

(4) 可以設(shè)置獲取到團(tuán)隊(duì)整體的改進(jìn)進(jìn)度;

(5) 通過 innersourcing 讓不在權(quán)限范圍內(nèi)的人訪問不到該資源,;

所以,,從代碼的私有性上來看,GitLab 是一個(gè)更好的選擇,。但是對(duì)于開源項(xiàng)目而言,,GitHub 依然是代碼托管的首選。

    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多