阿里雲服務器搭建git服務器


服務器操作系統:CentOS7.4
客戶端操作系統:MacOSX 10.13

1.在服務器安裝git

git 程序既可以用作客戶端,也可以用作服務器。
我以root賬號ssh登錄

# yum install git

2.創建一個用戶組git

建立用戶組的目的在於對於這個git服務器,賦予多人訪問權限時,可以統一管理。

# groupadd git

3.在用戶組git下創建一個用戶,名字也為git

# adduser git -g git

這個用戶用作一個訪問服務器的公共用戶。
此命令可能不會當場需要你輸入密碼,這時可以跳過,不用管它

4.在客戶端創建RSA密鑰

注意,這一步是在Mac上進行

$ ssh-keygen

輸入命令后會出現提示Enter passphrase (empty for no passphrase):這一步和下一步的確定需要直接回車,並且生成~/.ssh/id_rsa私鑰和~/.ssh/id_rsa.pub公鑰這兩個文件。我們把~/.ssh/id_rsa.pub這個文件里的內容全部復制下來,然后進行下一步。

5.在服務器上建立文件保存公鑰

注意,這里又回到了服務器,我們還是用root登錄

# cd /home/git/
# mkdir .ssh
# chmod 700 .ssh
# touch .ssh/authorized_keys
# chmod 600 .ssh/authorized_keys
# chown -R git:git .ssh  

其中/home/git目錄為服務器上用戶git的主頁目錄,上訴操作相當於在/home/git/.ssh/目錄下新建一個authorized_keys文件。並把目錄.ssh的權限設置為700,authorized_keys文件權限設置為600.
因為git的pull相當於讀操作,push相當於寫操作,所以需要讀寫權限。

6.復制客戶端公鑰內容到服務器authorized_keys文件

這里涉及vim操作,大家可以搜索做法

7.在服務器初始化git倉庫

選定一個目錄作為Git倉庫,假定是/data/gitroot/memo.git:

# cd /data
# mkdir gitroot
# chown git:git gitroot/
# cd gitroot
# git init --bare memo.git
# chown -R git:git memo.git

8.在客戶端克隆倉庫

$ git clone git@101.200.xxx.xxx:/data/gitroot/memo.git

其中101.200.xxx.xxx為git服務器ip,需要將其修改為你自己的git服務器ip。
如果此時還需要輸入密碼,那么請參考

可能需要的額外的設置

或者在客戶端使用命令進行調試

ssh -vvT git@gihubserverip

本人就是在生成公鑰時,輸入了自己的passphrase(密碼),然后git clone和git push時都需要輸入密碼


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM