一. 安裝 libiconv
這個是非常規項 如果服務器原來已經裝過 可以不裝 但是如果git安裝時候提示找不到libiconv 需要在git的安裝參數中指定安裝路徑
最新版是 1.15
- wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.15.tar.gz
- tar -zxvf libiconv-1.15.tar.gz
- cd libiconv-1.15
- ./configure --prefix=/usr/local/libiconv && make && make install
- rm -rf /usr/lib/libiconv.so //刪除原有的軟連接
- rm -rf /usr/lib/libiconv.so.2
- ln -s /usr/local/lib/libiconv.so /usr/lib 新建軟連接
- ln -s /usr/local/lib/libiconv.so.2 /usr/lib
二. 卸載原有git 默認git一般版本都比較低 1.7 1.8的 現在已經2.9+了 所以先卸載原來老的
- rpm -e --nodeps git
三 安裝git 具體版本自己找 本文以2.9.2為例
- cd ../ #返回上級目錄
- wget https://github.com/git/git/archive/v2.9.2.tar.gz
- tar -xzvf v2.9.2.tar.gz
- cd git-2.9.2
- make prefix=/usr/local/git all #如果報錯 使用下面的方式
- make prefix=/usr/local/git install #如果報錯 使用下面的方式
- make configure
- ./configure --prefix=/usr/local/git --with-iconv=/usr/local/libiconv #libiconv地址改成自己的
- make && make install
- vi /etc/profile #添加到環境變量
export PATH="/usr/local/git/bin:$PATH"
source /etc/profile #是配置立即生效 - git --version #查看版本號
- 將git設置為默認路徑,不然后面克隆時會報錯
ln -s /usr/local/git/bin/git-upload-pack /usr/bin/git-upload-pack
ln -s /usr/local/git/bin/git-receive-pack /usr/bin/git-receive-pack
四. 配置git
-
Git服務器打開RSA認證
vi /etc/ssh/sshd_config #以下項前面的#去掉
1.RSAAuthentication yes
2.PubkeyAuthentication yes
3.AuthorizedKeysFile .ssh/authorized_keys -
禁止Shell登錄
vi /etc/passwd
git:x:502:502::/home/git:/bin/bash 修改成下面的 git的路徑要設置成自己的
git:x:502:502::/home/git:/usr/local/git/bin/git-shell -
創建git用戶組和用戶
groupadd git
useradd git -g git
passwd git
su - git #切換到剛創建的git用戶 -
創建用戶公鑰文件
cd /home/git/
mkdir .ssh #新建文件夾
chmod 700 .ssh
touch .ssh/authorized_keys #新建文件
chmod 600 .ssh/authorized_keys
后續用戶只需要向authorized_keys中添加自己的公鑰
五. 創建倉庫及使用
1. cd /home/git #在某個文件夾下創建
git init --bare test.git #創建一個空倉庫 倉庫名字叫 test
2. 本地克隆倉庫
git clone git@your-ip:test.git