一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

云服務(wù)器|WEB服務(wù)器|FTP服務(wù)器|郵件服務(wù)器|虛擬主機(jī)|服務(wù)器安全|DNS服務(wù)器|服務(wù)器知識(shí)|Nginx|IIS|Tomcat|

服務(wù)器之家 - 服務(wù)器技術(shù) - 云服務(wù)器 - 詳解在阿里云上搭建自己的git服務(wù)器

詳解在阿里云上搭建自己的git服務(wù)器

2020-07-28 18:36西北逍遙 云服務(wù)器

本篇文章主要介紹了在阿里云上搭建自己的git服務(wù)器,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧

這篇文章我就來介紹一下如何在一臺(tái)全裸的阿里云主機(jī)上搭建自己的git服務(wù)器。詳細(xì)的介紹了每個(gè)步驟,具體如下:

1. 安裝git

首先安裝git,一般而言,現(xiàn)在的服務(wù)器已經(jīng)內(nèi)置了git安裝包,我們只需要執(zhí)行簡(jiǎn)單的安裝命令即可安裝。比如:

?
1
2
$ yum install git # centos
$ apt-get install git # ubuntu

上面是直接用root登陸服務(wù)器進(jìn)行操作,也是為了演示方便。

git和mysql不一樣,mysql在安裝時(shí),得安裝mysql-server,即mysql服務(wù)器,git是分布式的,每一個(gè)安裝了git的電腦,既是客戶端,也是服務(wù)器,git與git之間可以相互通信,而我們所謂的git服務(wù)器,實(shí)際上和我們自己的電腦沒有什么本質(zhì)上的差別。但是,我們?yōu)榱烁行У墓芾眄?xiàng)目,都采取中心化的管理方式,因此創(chuàng)建一個(gè)“git服務(wù)器”,作為其他所有人提交代碼的最終終端。

2.創(chuàng)建git用戶及權(quán)限

我們當(dāng)然不允許直接使用root來進(jìn)行通信交互了,所以,我們創(chuàng)建一個(gè)git用戶來作為今后提交代碼的用戶。

?
1
$ adduser git

執(zhí)行這條命令之后,你發(fā)現(xiàn)在/home目錄下多了一個(gè)git目錄,按理來說,現(xiàn)在,你的系統(tǒng)中多了這個(gè)git用戶,并且家目錄在/home/git。但是,我們并不希望這個(gè)用戶通過ssh連接到服務(wù)器上面去,所以,我們要禁止這個(gè)用戶使用ssh連接上去進(jìn)行操作。我們通過編輯一個(gè)權(quán)限文件來處理:

?
1
$ vi /etc/passwd

找到類似于

?
1
git:x:1001:1001:,,,:/home/git:/bin/bash

這樣的行,你看到那個(gè)末尾的/bin/bash,就是允許ssh連接操作的權(quán)限,我們把它改為/user/bin/git-shell,結(jié)果如下:

?
1
git:x:1001:1001:,,,:/home/git:/usr/bin/git-shell

這樣處理好,git就不能ssh連上去了(實(shí)際上是可以的,只不過會(huì)閃退)。

我們還得給git分配一個(gè)密碼,執(zhí)行:

?
1
$ passwd git 123456(你的密碼)

這個(gè)密碼用在你后面提交代碼的時(shí)候使用。

3.公鑰

這個(gè)是git里面比較特殊的一步操作,通信的時(shí)候,客戶端與服務(wù)器需要一個(gè)證書進(jìn)行驗(yàn)證。操作方法很簡(jiǎn)單,首先在你自己的電腦上(ubuntu)生成自己的一個(gè)公鑰:

?
1
2
$ cd ~
$ ssh-keygen -t rsa

這時(shí)你自己電腦上就有一個(gè)公鑰了,但是在哪里呢?在.ssh目錄下,.開頭的文件夾都是隱藏的,但是可以cd進(jìn)去。

?
1
2
$ cd .ssh
$ vi id_rsa.pub

這樣就能看到你的公鑰了,把所有的內(nèi)容復(fù)制下來。接下來,我們?nèi)セ胤?wù)器上面操作。

?
1
2
3
4
$ cd /home/git/
$ mkdir .ssh
$ cd .ssh
$ vi authorized_keys

如果是裸機(jī),服務(wù)器上面/home/git目錄下應(yīng)該沒有.ssh目錄,所以我們自己創(chuàng)建,打開(自動(dòng)創(chuàng)建)authorized_keys之后,把剛才復(fù)制下來的公鑰黏貼進(jìn)去,ok了,保存退出。

使用證書,主要是為了無(wú)需密碼就可以提交代碼。

4.初始化一個(gè)git倉(cāng)庫(kù)

我習(xí)慣把這類東西丟到/var下去,所以,我們?cè)?var下面創(chuàng)建一個(gè)git目錄

?
1
2
3
4
5
$ cd /var
$ mkdir git
$ chown -R git:git git
$chmod 777 git
$ cd git

接下來,我們用git命令初始化一個(gè)倉(cāng)庫(kù):

?
1
$ git init --bare arepoforyourproject.git

初始化完成之后,這個(gè)空的倉(cāng)庫(kù)就OK了。

這里有一個(gè)細(xì)節(jié),就是.git目錄必須要有可讀寫權(quán)限,因?yàn)楫?dāng)我們?cè)趐ush的時(shí)候,是使用git用戶推送到服務(wù)器上面去,會(huì)有一個(gè)寫入的過程,如果不賦予可寫權(quán)限,push就會(huì)失敗。

5.克隆試試

回到你本地的電腦上,我們通過克隆來試試倉(cāng)庫(kù)是否可以使用:

?
1
$ git clone [email protected]:/var/git/arepoforyourproject.git

然后會(huì)提示你輸入git的密碼,輸入進(jìn)去,然后會(huì)再提示你克隆了一個(gè)空白的版本庫(kù)。這說明服務(wù)器已經(jīng)OK了。

6.多用戶和權(quán)限管理

如果團(tuán)隊(duì)很小,把每個(gè)人的公鑰收集起來放到服務(wù)器的/home/git/.ssh/authorized_keys文件里就是可行的。如果團(tuán)隊(duì)有幾百號(hào)人,就沒法這么玩了,這時(shí),可以用Gitosis來管理公鑰。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持服務(wù)器之家。

原文鏈接:http://www.cnblogs.com/herd/p/7063091.html

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 欧美日韩国产在线一区 | 日本中文字幕一区二区三区不卡 | 欧美老人与小伙子性生交 | bl超h 高h 污肉快穿np | 日韩在线天堂免费观看 | 顶级尤物极品女神福利视频 | 国产欧美日韩免费一区二区 | 欧美生活一级片 | 男同桌扒开女同桌胸罩喝奶 | 久久中文字幕亚洲 | jazz中国女人护士 | 色综合天天综合网看在线影院 | 性欧美videofree中文字幕 | 国产精品免费视频能看 | 国产精品手机视频一区二区 | 男人狂躁女人下面的视频免费 | 800精品国产导航 | 奇米网7777| 日韩视频免费看 | 色老板在线免费视频 | 五月丁开婷婷 | 免费观看国产视频 | 日韩性事 | ai换脸明星专区在线观看 | 性啪啪chinese东北女人 | 色综合久久中文字幕综合网 | 边吃奶边扎下面 | 色淫阁小说 | 无人在线观看免费高清视频播放 | 大桥未久aⅴ一区二区 | 欧美日韩看看2015永久免费 | 99久久爱热6在线播放 | 国产精品久久久久久吹潮 | 99福利视频导航 | 国内精品久久久久久久 | 性欧美sexvideo另类 | 忘忧草在线 | 亚洲 欧美 清纯 校园 另类 | 19+韩国女主播激情vip视频在线 | 乳环贵妇堕落开发调教番号 | 偷拍自拍校园春色 |