0.环境:
系统centos6.5
1.首先安装git
yum install git
yum上最新的安装包为1.7.1版本。如果想安装最新版本请使用源码安装,这里不赘述。个人感觉日常使用区别不大。
2.新建git用户
groupadd git
adduser git -g git
3.在客户端(需要clone代码的电脑)
ssh-keygen -t rsa -C "your_email"
这时会生成两个文件,一个公钥(~/.ssh/id_rsa.pub)一个私钥(~/.ssh/id_rsa)
4.证书登录(即在服务器端配置authorized_keys实现证书登录)
cd /home/git
mkdir .ssh
chmod 700 .ssh
touch .ssh/authorized_keys
chmod 600 .ssh/authorized_keys
chown -R git:git /home/git
将第3步中生成的id_rsa.pub中的内容(只有一行,复制时请注意。 形式为一串字符串加第3步中填写的邮箱),放在authorized_keys中,如有多个客户端则一行一个。
5.初始化git仓库
为方便管理可以新建repository目录同意存放仓库
cd /home/git
mkdir repository
cd repository
git init --bare gittest.git
chown -R git:git gittest.git
Git会创建一个裸仓库,裸仓库没有工作区,因为服务器上的Git仓库纯粹是为了共享,所以不让用户直接登录到服务器上去改工作区,并且服务器上的Git仓库通常都以.git
结尾。
6.禁用shell登录
出于安全考虑,第2步创建的git用户不允许登录shell,这可以通过编辑/etc/passwd
文件完成。
找到:
git:x:502:502::/home/git:/bin/bash
给成:
git:x:502:502::/home/git:/usr/local/git/bin/git-shell
7.客户端clone
参考资料:
http://www.runoob.com/git/git-server.html