欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

版本控制系統(tǒng)(git+gitolite)-創(chuàng)新互聯(lián)

前言:

創(chuàng)新互聯(lián)公司總部坐落于成都市區(qū),致力網(wǎng)站建設(shè)服務(wù)有成都網(wǎng)站制作、網(wǎng)站設(shè)計(jì)、網(wǎng)絡(luò)營(yíng)銷策劃、網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站維護(hù)、公眾號(hào)搭建、小程序開(kāi)發(fā)、軟件開(kāi)發(fā)等為企業(yè)提供一整套的信息化建設(shè)解決方案。創(chuàng)造真正意義上的網(wǎng)站建設(shè),為互聯(lián)網(wǎng)品牌在互動(dòng)行銷領(lǐng)域創(chuàng)造價(jià)值而不懈努力!

Git簡(jiǎn)介

Linus在1991年創(chuàng)建了開(kāi)源的Linux,從此,Linux系統(tǒng)不斷發(fā)展,已經(jīng)成為大的服務(wù)器系統(tǒng)軟件了。Linus雖然創(chuàng)建了Linux,但Linux的壯大是靠全世界熱心的志愿者參與的,這么多人在世界各地為L(zhǎng)inux編寫(xiě)代碼。2005年,為了解決Linux系統(tǒng)的源碼開(kāi)發(fā)管理這一問(wèn)題,Linus花了兩周時(shí)間自己用C寫(xiě)了一個(gè)分布式版本控制系統(tǒng),這就是Git,目前世界上最先進(jìn)的分布式版本控制系統(tǒng)。2008年,GitHub網(wǎng)站上線了,它為開(kāi)源項(xiàng)目免費(fèi)提供Git存儲(chǔ),無(wú)數(shù)開(kāi)源項(xiàng)目開(kāi)始遷移至GitHub,包括jQuery,PHP,Ruby等等,Git迅速成為最流行的分布式版本控制系統(tǒng)。(目前,絕大多數(shù)Linux已自帶git軟件)


Gitolite簡(jiǎn)介

如果不是要和他人協(xié)同開(kāi)發(fā),Git 根本就不需要架設(shè)服務(wù)器。Git在本地可以直接使用本地版本庫(kù)的路徑完成git版本庫(kù)間的操作。但是如果需要和他人分享版本庫(kù)、協(xié)作開(kāi)發(fā),就需要能夠通過(guò)特定的網(wǎng)絡(luò)協(xié)議操作Git庫(kù)。Git支持的協(xié)議很豐富,架設(shè)服務(wù)器的選擇也很多,不同的方案有著各自的優(yōu)缺點(diǎn)。Gitolite是一個(gè)輕量級(jí)的開(kāi)源項(xiàng)目,使用SSH公鑰認(rèn)證,能做到分支級(jí)的權(quán)限控制。對(duì)于個(gè)人,中小型企業(yè)及一些開(kāi)源項(xiàng)目而言,如果沒(méi)有特殊的要求,Gitolite提供的服務(wù)已經(jīng)足夠用。

Gitolite安裝

實(shí)驗(yàn)環(huán)境:

Gitolite服務(wù)器:

[root@linux-node1-gitolite-server ~]# cat /etc/redhat-release

CentOS Linux release 7.4.1708 (Core)

[root@linux-node1-gitolite-server ~]# ifconfig |awk 'NR==2 {print $2}'

172.16.48.132

1. 安裝相應(yīng)的依賴環(huán)境

[root@linux-node1-gitolite-server ~]# yum install perl openssh git -y

2. 創(chuàng)建git用戶,生成用于管理gitolite的公鑰和私鑰

[root@linux-node1-gitolite-server ~]# useradd git

[root@linux-node1-gitolite-server ~]# echo git|passwd --stdin git

[root@linux-node1-gitolite-server ~]# ssh-keygen

[root@linux-node1-gitolite-server ~]# cp /root/.ssh/id_rsa.pub /tmp/admin.pub

3. 切換到git用戶下創(chuàng)建安裝目錄

[root@linux-node1-gitolite-server ~]# su - git

[git@linux-node1-gitolite-server ~]$ mkdir bin

4. 下載gitolite源碼

[git@linux-node1-gitolite-server ~]$ git clonehttps://github.com/sitaramc/gitolite.git

5. 安裝gitolite

[git@linux-node1-gitolite-server ~]$ ./gitolite/install -to /home/git/bin/

[git@linux-node1-gitolite-server ~]$ /home/git/bin/gitolite setup -pk /tmp/admin.pub

6. 切換到root用戶下,clone gitolite-admin.git

[git@linux-node1-gitolite-server ~]$ su - root

[root@linux-node1-gitolite-server ~]# git clone git@172.16.48.132:gitolite-admin.git

7. 至此,成功clone下gitolite-admin目錄即gitolite安裝成功。

[root@linux-node1-gitolite-server ~]# ls

anaconda-ks.cfg  gitolite-admin

注:gitolite是通過(guò)管理gitolite-admin來(lái)對(duì)倉(cāng)庫(kù)進(jìn)行授權(quán)管理的。

1. conf為配置文件目錄

2. keydir為git客戶端公鑰目錄

協(xié)作使用

開(kāi)發(fā)人員1服務(wù)器配置:

[root@linux-node0-manager ~]# cat /etc/redhat-release

CentOS Linux release 7.4.1708 (Core)

[root@linux-node0-manager ~]# ifconfig|awk 'NR==2 {print $2}'

172.16.48.129

1. 在開(kāi)發(fā)人員1服務(wù)器上生成公鑰私鑰

[root@linux-node0-manager ~]# ssh-keygen -f ~/.ssh/chentaicheng

[root@linux-node0-manager ~]# ls ~/.ssh/

chentaicheng  chentaicheng.pub

2. 將公鑰chentaicheng.pub存放到gitolite服務(wù)器的gitolite-admin/keydir目錄下

[root@linux-node0-manager ~]# scp -P22 -r -p ~/.ssh/chentaicheng.pubroot@172.16.48.132:gitolite-admin/keydir

3. 訪問(wèn)倉(cāng)庫(kù)配置文件

版本控制系統(tǒng)(git + gitolite)

 

gitolite服務(wù)器上配置chentaicheng密鑰對(duì)應(yīng)的倉(cāng)庫(kù)及權(quán)限:

1. 檢查chentaicehng.pub是否存在gitolite-admin/keydir目錄下

[root@linux-node1-gitolite-server keydir]# pwd

/root/gitolite-admin/keydir

[root@linux-node1-gitolite-server keydir]# ls

admin.pub  chentaicheng.pub

[root@linux-node1-gitolite-server keydir]#

2. 配置chentaicheng密鑰對(duì)應(yīng)的倉(cāng)庫(kù)

版本控制系統(tǒng)(git + gitolite)

3. 配置git

[root@linux-node1-gitolite-server gitolite-admin]# pwd

/root/gitolite-admin

[root@linux-node1-gitolite-server gitolite-admin]# git config --global user.email "chentaicheng@qq.com"

[root@linux-node1-gitolite-server gitolite-admin]# git config --global user.name "chentaicheng"

4. 將修改后的配置及公鑰更新到gitolite服務(wù)器

[root@linux-node1-gitolite-server gitolite-admin]# git add *

[root@linux-node1-gitolite-server gitolite-admin]# git commit -m 'add new repo ctc by chentaicheng'

[root@linux-node1-gitolite-server gitolite-admin]# git push

檢查開(kāi)發(fā)人員1是否能獲取倉(cāng)庫(kù)ctc的讀寫(xiě)權(quán)限

版本控制系統(tǒng)(git + gitolite)

Clone ctc倉(cāng)庫(kù)并增加內(nèi)容然后提交到遠(yuǎn)程倉(cāng)庫(kù)上

[root@linux-node0-manager ~]# git clone gitolite:ctc

Cloning into 'ctc'...

Enter passphrase for key '/root/.ssh/chentaicheng':

warning: You appear to have cloned an empty repository.

[root@linux-node0-manager ~]# ls

anaconda-ks.cfg  ctc

[root@linux-node0-manager ~]# cd ctc/

[root@linux-node0-manager ctc]# git config --global user.email "791582297@qq.com"

[root@linux-node0-manager ctc]# git config --global user.name "CTC"

[root@linux-node0-manager ctc]# git add readme.txt

[root@linux-node0-manager ctc]# git commit -m 'add readme.txt'

[root@linux-node0-manager ctc]# git push origin master

至此,git+gitolite部署完畢。

開(kāi)發(fā)人員2獲取開(kāi)發(fā)人員1push的代碼

開(kāi)發(fā)人員2環(huán)境:

[root@linux-node2-develop ~]# cat /etc/redhat-release

CentOS Linux release 7.4.1708 (Core)

[root@linux-node2-develop ~]# ifconfig|awk 'NR==2 {print $2}'

172.16.48.133

1. 在開(kāi)發(fā)人員2主機(jī)上生成密鑰對(duì),并將密鑰傳輸?shù)絞itolite服務(wù)的gitolite-admin/keydir目錄下

[root@linux-node2-develop ~]# mkdir .ssh

[root@linux-node2-develop ~]# ssh-keygen -f .ssh/develop

[root@linux-node2-develop ~]# scp -P22root@172.16.48.132:gitolite-admin/keydir

2. 配置develop密鑰對(duì)應(yīng)的倉(cāng)庫(kù)

版本控制系統(tǒng)(git + gitolite)

3. gitolite修改配置文件,并更新到gitolite服務(wù)器上,使開(kāi)發(fā)人員2對(duì)ctc倉(cāng)庫(kù)具有讀寫(xiě)權(quán)限。

版本控制系統(tǒng)(git + gitolite)

[root@linux-node1-gitolite-server gitolite-admin]# pwd

/root/gitolite-admin

[root@linux-node1-gitolite-server gitolite-admin]# git add *

[root@linux-node1-gitolite-server gitolite-admin]# git commit -m 'add develop'

[root@linux-node1-gitolite-server gitolite-admin]# git push

4. 開(kāi)發(fā)人員2獲取開(kāi)發(fā)人員1push的代碼

[root@linux-node2-develop ~]# git clone gitolite:ctc

[root@linux-node2-develop ~]# ls

anaconda-ks.cfg  ctc

[root@linux-node2-develop ~]# cd ctc/

[root@linux-node2-develop ctc]# ls

readme.txt

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。

當(dāng)前標(biāo)題:版本控制系統(tǒng)(git+gitolite)-創(chuàng)新互聯(lián)
新聞來(lái)源:http://www.chinadenli.net/article14/ipsge.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站改版品牌網(wǎng)站建設(shè)軟件開(kāi)發(fā)定制網(wǎng)站動(dòng)態(tài)網(wǎng)站定制開(kāi)發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

網(wǎng)站建設(shè)網(wǎng)站維護(hù)公司