此次搭建git服务器,搭建环境为:vmware,centos6,建议练习搭建先在自己虚拟机上完成。
准备好了就开始动手吧。
1、安装Git我选用的是yum安装,比较方便。
ubantu使用:
2、创建一个Git组
3、创建一个Git用户并禁用用户的shell登录
4、修改git用户的登录密码,输入两次密码就可以了
5、初始化git仓库,这里我们选择/srv/project.git来作为我们的git仓库
6、修改/srv/project.git属组权限修改为git。(如果忘了修改 权限,那么兄弟,等你git push上传文件的 时候,就会出现error: insufficient permission for adding an object to repository database ./objects,这样的报错了,这时候看下 文件的 权限,修改下权限即可。)
6.在客户端 clone一下远程仓库,第一次使用git的clone或push时,会得到一个 警告,这是因为 git使用ssh链接,而ssh链接在第一次验证gihub服务器的key时,需要你确认github的key的指纹是否 真的 来自github服务器,输入yes即可。然后输入刚才给git设置的密码。
$ git clone git@yourIP:/srv/project.git
7、创建SSh key并管理
首先查看用户目录下是否有.ssh,如果有,再看看这个目录下又没没有id_rsa和id_rsa.pub两个文件,如果没有就创建 一个:
$ ssh-keygey -t rsa -C "yourmail"
你需要把邮件地址换成你自己的邮件地址,然后一路回车,使用默认值即可,由于这个Key也不是用于军事目的,所以也无需设置密码。
如果一切顺利的话,可以在用户主目录里找到.ssh目录,里面有id_rsa和id_rsa.pub两个文件,这两个就是SSH Key的秘钥对,id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,可以放心地告诉任何人。
如果团队很小,把每个人的公钥收集起来放到服务器的/home/git/.ssh/authorized_keys
文件里就是可行的。如果团队有几百号人,就没法这么玩了,这时,可以用Gitosis来管理公钥。
这里我们不介绍怎么玩Gitosis了,几百号人的团队基本都在500强了,相信找个高水平的Linux管理员问题不大。
8.Git服务器打开RSA认证。
然后就可以去Git服务器上添加你的公钥用来验证你的信息了。在Git服务器上首先需要将/etc/ssh/sshd_config中将RSA认证打开,即:
1.RSAAuthentication yes 2.PubkeyAuthentication yes 3.AuthorizedKeysFile .ssh/authorized_keys
然后再次clone或push的时候就不需要输入密码了。
使用git时,一些常用的命令可以参阅我的另一篇博文:http://www.cnblogs.com/chaochao520/p/8126856.html