安裝git
yum install -y git
我選擇/data/git/demo.git作為倉庫
mkdir -p /data/git // 新建文件夾
cd /data/git // 進入/data/git文件夾
git init --bare demo.git // 創(chuàng)建一個裸倉庫
關于--bare參數(shù)及其作用詳情請看這篇文章傳送門
創(chuàng)建git用戶
adduser git
將learngit.git擁有者給到git用戶
chown -R git:git demo.git
在本地拉取demo倉庫
git clone git@阿里云外網(wǎng)地址:/data/git/demo.git
關聯(lián)本地項目到遠程倉庫。
如果本地項目已經(jīng)完成,怎么關聯(lián)本地項目到遠程呢?
在項目的根目錄初始化倉庫
git remote add origin git@阿里云外網(wǎng)地址:/data/git/demo.git // 關聯(lián)遠程倉庫
git init // 初始化git倉庫
git add -A // 將所有的文件添加到git緩存區(qū)
git commit -m '.....' // 將緩存區(qū)文件提交到git倉庫
git push -u origin master // 提交并關聯(lián)遠程倉庫
第一,當你第一次使用Git的clone或者push命令連接GitHub時,會得到一個警告:
The authenticity of host 'xx.xx.xx.xx' can't be established.
RSA key fingerprint is xx.xx.xx.xx.xx.
Are you sure you want to continue connecting (yes/no)?
輸入yes,后又要輸入密碼,輸入密碼,倉庫成功拉取到了本地。但是一般都是用代替密碼來驗證的。
生成SSH Key密鑰
在用戶主目錄下,看看有沒有.ssh目錄,.ssh里有沒有id_rsa和id_rsa.pub兩個文件。有代表你以前生成過密鑰,不用重新生成。(我的之前生成的公鑰一直要密碼登錄,但是重新生成后就沒有問題了)
ssh-keygen -t rsa -C "email@example.com" // 生成密鑰
tips: 關于git的詳細教程,不懂的可以移步廖雪峰老師的網(wǎng)站學習傳送門
服務器配置git公鑰驗證
vi /etc/ssh/sshd_config // 編輯配置文件
RSAAuthentication yes // 去掉注釋 #
PubkeyAuthentication yes // 去掉注釋 #
AuthorizedKeysFile .ssh/authorized_keys // .ssh/authorized_keys 為公鑰配置文件
.ssh/authorized_keys 在 /home/git文件下,故要新建文件
mkdir -p /home/git/.ssh // 新建文件夾
touch authorized_keys // 新建文件
復制本地git生成的id_rsa.pub文件中內(nèi)容,粘貼到authorized_keys中,保存。
git clone git@阿里云外網(wǎng)地址:/data/git/demo.git
發(fā)現(xiàn)不要密碼也可以拉取倉庫了。
禁用git用戶的shell登陸
處于安全考慮,git用戶不能通過shell登錄。
git:x:1002:1002:,,,:/home/git:/bin/bash // 將這句改成下面這句
git:x:1002:1002:,,,:/home/git:/usr/bin/git-shell
到此,git的配置就完成了。