更新時間:2021-11-19 來源:黑馬程序員 瀏覽量:
1、git
git是一個版本控制系統(tǒng)。
版本控制是一種用于記錄一個或多個文件內(nèi)容變化,方便我們查閱特定版本修訂情況的系統(tǒng)。
早期出現(xiàn)的版本控制系統(tǒng)有:svn、cvs 等,它們是集中式版本控制系統(tǒng),都有一個單一的集中管理的服務(wù)器,保存所有文件的修訂版本,而協(xié)同合作的開發(fā)人員都通過客戶端連接到這臺服務(wù)器,取出最新的文件或者提交更新。
而我們的主角git是分布式版本控制系統(tǒng)。git 已經(jīng)成為越來越多開發(fā)者的青睞,因為分布式的優(yōu)勢是很顯著的。
2、集中式和分布式版本控制系統(tǒng)的區(qū)別:
(1)分布式版本控制系統(tǒng)下的本地倉庫包含代碼庫還有歷史庫,在本地就可以查看版本歷史;
(2)而集中式版本控制系統(tǒng)下的歷史倉庫是存在于中央倉庫,每次對比與提交代碼都必須連接到中央倉庫;
(3)多人開發(fā)時,如果充當(dāng)中央倉庫的 git 倉庫掛掉了,任何一個開發(fā)者都可以隨時創(chuàng)建一個新的中央倉庫然后同步就可以恢復(fù)中央倉庫。
3、github和gitlab
github和gitlab都是基于web的git倉庫,使用起來二者差不多,它們都提供了分享開源項目的平臺,為開發(fā)團(tuán)隊提供了存儲、分享、發(fā)布和合作開發(fā)項目的中心化云存儲的場所。
github作為開源代碼庫,擁有超過900萬的開發(fā)者用戶,目前仍然是最火的開源項目托管平臺,github同時提供公共倉庫和私有倉庫,但如果使用私有倉庫,是需要付費的。
gitlab解決了這個問題,你可以在上面創(chuàng)建私人的免費倉庫,讓開發(fā)團(tuán)隊對他們的代碼倉庫擁有更多的控制。
gitlab特色
(1)允許免費設(shè)置倉庫權(quán)限;
(2)允許用戶選擇分享一個 project 的部分代碼;
(3)允許用戶設(shè)置 project 的獲取權(quán)限,進(jìn)一步提升安全性;
(4)可以設(shè)置獲取到團(tuán)隊整體的改進(jìn)進(jìn)度;
(5)通過innersourcing讓不在權(quán)限范圍內(nèi)的人訪問不到該資源;所以,從代碼的私有性上來看,gitlab是一個更好的選擇。但是對于開源項目而言,github依然是代碼托管的首選。
猜你喜歡