前言
我们可以GitHub发布一些开源代码的公共仓库,但对于私密仓库就需要收费了。公司内部通常会搭建自己的Git服务器,我也通过在自己的服务器上搭建练习一下。
开始前先说一下服务器信息,这里是阿里云的CentOS 6.5 64位操作系统。
1、 确认服务器是否安装Git
[root@iZ25r8k6ifuZ git]# rpm -qa git
git-1.7.1-3.el6_4.1.x86_64
这里也已经安装过了,如果没有安装可以用yum install git 安装。
[root@iZ2595jzt70Z /]# cat /etc/passwd
2、创建一个git用户,用来运行git服务
[root@iZ2595jzt70Z /]# adduser git
查看用户是否添加
[root@iZ2595jzt70Z /]# cat /etc/passwd
3、初始化Git仓库
[root@iZ2595jzt70Z /]# mkdir -p /data/git
[root@iZ2595jzt70Z git]# cd /data/git
[root@iZ2595jzt70Z git]# git init --bare test.git
[root@iZ2595jzt70Z git]# ls
branches config description HEAD hooks index info objects refs
执行以上命令 Git命令,会创建一个裸仓库,裸仓库没有工作区,因为服务器上的Git仓库纯粹是为了共享,所以不让用户直接登录到服务器上去改工作区,并且服务器上的Git仓库通常都以.git结尾。
然后,把owner改为git:
[root@iZ2595jzt70Z git]# chown -R git.git test.git
[root@iZ2595jzt70Z git]# ls -al
drwxr-xr-x 7 git git 4096 05-09 13:50 test.git
4、创建客户端登录证书
1).客户端生成id_rsa.pub文件的命令
[root@iZ2595jzt70Z /]# ssh-keygen -t rsa -C "邮箱@example.com"
中间都是直接回车、最后生成公钥、私钥
将生成的id_rsa.pub,复制给管理员,
把所有公钥复制到/home/git/.ssh/authorized_keys文件里,一行一个
下次你用git时就不需要输入用户名和密码了。
2).查看服务器上authorized_keys文件
[root@git ~]# cat /home/git/.ssh/authorized_keys
|
说明:我这里有三个用户登录服务器,所以我这里就有三个ssh-rsa,大家可以看一下。
5、克隆远程仓库
注,现在可以通过git clone命令克隆远程仓库了,在各自的电脑上运行:
注,$ git clone git@ip:/data/git/test.git,其中git用户名,ip服务器,/data/git/test.git是仓库路径。好了,到这里服务器的搭建到这里就完成了,下面我们来安装一下客户端。