下載地址:https://www.kernel.org/pub/software/scm/git/ 下載 git-2.9.5.tar.gz
1、解壓
tar xzf git-2.9.5.tar.gz
2、設置安裝前綴
cd git-2.9.5 configure --prefix=/usr/local/git -with-tcltk
3、安裝
安裝依賴:
yum install curl-devel expat-devel gettext-devel openssl-devel zlib-develperl-devel
//make all 可安裝說明文檔
make
make install
git --version #檢查是否安裝成功
如果是首次安裝就還需將git 命令執行路徑添加到 PATH中
vim /etc/bashrc //末尾加入如下命令
export PATH=/usr/local/git/bin:$PATH保存退出
//刷新配置
source /etc/bashrc
//重新運行 git --version
[root@xxxxx-76uzm91p ~]# git --version
git version 2.9.5
二、服務器創建git遠程倉庫
1.創建一個裸倉
git init --bare
2.創建項目倉庫(work tree 目錄)
cd myProject.git/ git init chown -R git:git myProject.git #分配權限(沒有權限再wind端push代碼可能會遇到權限問題)
*接下來我們 創建一個git用戶組和用戶,用來運行git服務:
$ groupadd git
$ useradd git -g git
$ passwd ******
passwd git "密碼" # 修改git用戶的密碼
3.配置遠程倉庫地址
git remote add origin [email protected]:/home/git/myProject.git
#查看是否添加成功
git remote -v
4.從遠程倉庫clone 到本地。
git clone [email protected]:/home/git/myProject.git
5.測試提交可能會遇到需要設置denyCurrentBranch 的錯誤提示
到服務器端.修改work tree 下 .git/config 文件。末尾添加
[receive]
denyCurrentBranch = ignore
或者直接執行
git config receive.denyCurrentBranch ignore
6.服務器查看提交的文件
#刷新提交
git reset --hard
三、配置ssh 訪問方式
1.切換至root 用戶
su root
cd /etc/ssh
vim sshd_config
解開下面三行註釋
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
保存重啓sshd服務
/etc/rc.d/init.d/sshd restart(或則 systemctl restart sshd)
上面看到 身份認證文件要放到.ssh目錄下
2.創建身份認證文件並添加公鑰
進入git 用戶根目錄創建 .ssh 文件夾及 authorized_keys文件
cd /home/git
mkdir .ssh
cd .ssh
touch authorized_keys
vim authorized_keys //將公鑰添加至文件末尾 保存退出
3.使用root 用戶 開啓ssh 訪問,並拒絕使用ssh 直接登陸進服務器
vim /etc/passwd
找到
git:x:1001:1002::/home/git:/bin/git-shell
修改爲git 軟件安裝目錄下的shell命令路徑
git:x:1001:1002::/home/git:/usr/local/git/bin/git-shell
重新在客戶端commit push 就不用輸入密碼了。