欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

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

 更新時間:2017年11月14日 10:25:31   作者:西北逍遙  
本篇文章主要介紹了在阿里云上搭建自己的git服務器,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

這篇文章我就來介紹一下如何在一臺全裸的阿里云主機上搭建自己的git服務器。詳細的介紹了每個步驟,具體如下:

1. 安裝git

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

$ yum install git # centos
$ apt-get install git # ubuntu

上面是直接用root登陸服務器進行操作,也是為了演示方便。

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

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

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

$ adduser git

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

$ vi /etc/passwd

找到類似于

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

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

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

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

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

$ passwd git 123456(你的密碼)

這個密碼用在你后面提交代碼的時候使用。

3.公鑰

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

$ cd ~
$ ssh-keygen -t rsa

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

$ cd .ssh
$ vi id_rsa.pub

這樣就能看到你的公鑰了,把所有的內(nèi)容復制下來。接下來,我們?nèi)セ胤掌魃厦娌僮鳌?br />

$ cd /home/git/
$ mkdir .ssh
$ cd .ssh
$ vi authorized_keys

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

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

4.初始化一個git倉庫

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

$ cd /var
$ mkdir git
$ chown -R git:git git
$chmod 777 git
$ cd git

接下來,我們用git命令初始化一個倉庫:

$ git init --bare arepoforyourproject.git

初始化完成之后,這個空的倉庫就OK了。

這里有一個細節(jié),就是.git目錄必須要有可讀寫權(quán)限,因為當我們在push的時候,是使用git用戶推送到服務器上面去,會有一個寫入的過程,如果不賦予可寫權(quán)限,push就會失敗。

5.克隆試試

回到你本地的電腦上,我們通過克隆來試試倉庫是否可以使用:

$ git clone git@10.0.0.121:/var/git/arepoforyourproject.git

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

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

如果團隊很小,把每個人的公鑰收集起來放到服務器的/home/git/.ssh/authorized_keys文件里就是可行的。如果團隊有幾百號人,就沒法這么玩了,這時,可以用Gitosis來管理公鑰。

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 無需密碼通過ssh執(zhí)行rsync來同步文件的方法

    無需密碼通過ssh執(zhí)行rsync來同步文件的方法

    這篇文章主要介紹了無需密碼通過ssh執(zhí)行rsync來同步文件的方法,需要的朋友可以參考下
    2015-01-01
  • HTTPS 原理詳解

    HTTPS 原理詳解

    這篇干貨不錯,把HTTPS的原理講清楚了,而且容易懂,建議大家好好讀一下。
    2020-03-03
  • 防止服務器被攻擊的妙招(推薦)

    防止服務器被攻擊的妙招(推薦)

    本文通過三個方面給大家介紹一些簡單的配置防止服務器被攻擊,非常不錯具有參考借鑒價值,感興趣的朋友一起看看吧
    2016-10-10
  • 大數(shù)據(jù)平臺使用搭建腳本一鍵安裝OS

    大數(shù)據(jù)平臺使用搭建腳本一鍵安裝OS

    本文給大家分享的是如何在大數(shù)據(jù)平臺使用腳本來實現(xiàn)一鍵安裝定制OS,并給大家附上了腳本源碼,有需要的小伙伴可以參考下
    2018-03-03
  • 使用命令遠程注銷服務器的方法

    使用命令遠程注銷服務器的方法

    這篇文章主要介紹了使用命令遠程注銷服務器的方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2006-11-11
  • Windows下安裝squid的步驟詳解

    Windows下安裝squid的步驟詳解

    squid軟件一般常用于代理中,也是最常見的代理軟件,在linux下配置squid以前已經(jīng)說過了,下面介紹下Windows下安裝squid已經(jīng)配置的詳細方法
    2012-09-09
  • Samba服務器的配置與管理教程(保姆級)

    Samba服務器的配置與管理教程(保姆級)

    在Linux中,大家聽的最多的可能就是Samba服務,什么是Samba呢,下面小編就來和大家聊聊Samba服務器的配置與管理,感興趣的小伙伴可以了解一下
    2023-09-09
  • 使用GIT進行源碼管理——GUI客戶端小結(jié)

    使用GIT進行源碼管理——GUI客戶端小結(jié)

    很多人對GIT GUI客戶端是非常不屑一顧的,但我非常喜歡GUI的方便快捷,也不用記憶冗雜的命令,本文簡單的介紹了幾種免費的Windows下的GIT客戶端,方便大家使用
    2014-09-09
  • 在CentOS6.5上使用Jexus安裝部署ASP.NET MVC4和WebApi

    在CentOS6.5上使用Jexus安裝部署ASP.NET MVC4和WebApi

    本文主要介紹如何在CentOS6.5安裝Jexus,并介紹其常用命令以及如何創(chuàng)建和部署ASP.NET MVC4項目,從而實現(xiàn)跨平臺部署。
    2016-05-05
  • 文件服務器?File?Browser安裝配置詳解

    文件服務器?File?Browser安裝配置詳解

    這篇文章主要為大家介紹了文件服務器?File?Browser安裝配置詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-11-11

最新評論