在 linux 上搭建自己的 git 伺服器

2022-08-10 22:56:02 字數 1843 閱讀 9562

1:安裝git(已安裝請繞過)

yum install git  -y

2:安裝 ssh 服務 (已安裝請繞過)通過 ps -ef|grep sshd看看系統是否已經有ssh服務

yum install openssh-server openssh-client

3:建立 git 使用者

useradd git(建立名稱為git的使用者)

passwd git(為git使用者建立密碼)

4:建立git倉庫儲存目錄和許可權 

mkdir /home/git/repositories

chown git:git /home/git/repositories

chmod 755 /home/git/repositories

ps :  可根據自己的需求 更換目錄  下同  

5:切換到git使用者並建立伺服器倉庫

su git

cd /home/git/repositories (初始化乙個倉庫名稱為 test )

git init --bare test.git

最後在 客戶端 上驗證一下:

在客戶端命令列輸入:git clone git@***.***.**.**:/home/git/repositories/tset.git   (*  表示自己的ip )

根據提示先輸入yes,然後輸入密碼git使用者的密碼(即上面設定的密碼)

之後就可以在客戶端看到 test 這個目錄了,進入這個目錄,修改這目錄裡面的檔案,就能把修改push到伺服器了

ps: 在這裡我遇到了個錯誤 

warning: remote host identification has changed!

我這裡是 win7 的客戶端 進入  c:\users\administrator\.ssh  目錄

編輯known_hosts檔案   找到你的 對應ip 那幾行 刪掉它儲存就可以了

6:上面的方法再每次提交修改到伺服器的時候都會要求輸入密碼,比較麻煩,為了解決這個問題,可以將客戶端使用者ssh key寫入伺服器端git使用者的authorized_keys檔案中,具體操作

(1):在客戶端shell命令列輸入: ssh-keygen  ( 此處我是在 win7客戶端 的 git bash 中輸入的 )

如果是 linux 客戶端 會出現 ~/.ssh/id_rsa.pub 這個公鑰檔案

如果是 win 客戶端 則在 c:\users\administrator\.ssh  目錄

(2): 把 id_rsa.pub  檔案 上傳至 git 伺服器   保證git使用者可讀

git 伺服器切換到 git 使用者   

su  git (這一步弄清關聯給誰可以省略)

輸入並列印

cat id_rsa.pub >> ~/.ssh/authorized_keys   (注意兩者的目錄)

在這裡要弄清楚自己是要把  id_rsa.pub 檔案關聯給誰  正確的是關聯給 git 使用者 而不是 root 使用者 , 這個一定要分清 , 不然會還需要輸入密碼 ,而且會出現其他一些莫名其妙的錯誤  其實只要你弄明白這點 上一步  su git 命令是可以省略的   簡單來說 就是把 id_rsa.pub  檔案 關聯給 /home/git/.ssh/authorized_keys 檔案   而不是  /root/.ssh/authorized_keys 檔案

完成  , 客戶端重啟  git bash   轉殖 即可看到效果

文章**自   

在Linux上搭建git伺服器

這裡我使用的是centos伺服器 1 安裝gityum y install git 2 新新增使用者gitadduser git 3 進入 etc passwd將git x 1001 1001 home git bin bash改為git x 1001 1001 home git usr bin g...

在Linux上用Apache搭建Git伺服器

最近在學linux,終於在linux上用apache搭建起了git伺服器,在此記錄一下。伺服器 阿里雲伺服器 linux版本 centos 6.5 apache版本 apache 2.2.15 git版本 git 1.7.1 git訪問方式 基於http的基本驗證 非ssl apache的安裝 1....

在Linux上用Apache搭建Git伺服器

最近在學linux,終於在linux上用apache搭建起了git伺服器,在此記錄一下。伺服器 阿里雲伺服器 linux版本 centos 6.5 apache版本 apache 2.2.15 git版本 git 1.7.1 git訪問方式 基於http的基本驗證 非ssl apache的安裝 1....