Centos7 部署Git远程服务器完整版
• 作者:laoli0201
一、远程仓库实际上和本地仓库没啥不同,纯粹为了7x24小时开机并交换大家的修改。
GitHub就是一个免费托管开源代码的远程仓库。但是对于某些视源代码如生命的商业公司来说,既不想公开源代码,又舍不得给GitHub交保护费,那就只能自己搭建一台Git服务器作为私有仓库使用。
搭建Git服务器需要准备一台运行Linux的机器,下面就以Centos7为例安装
1、 首先检查电脑是否已安装git远程服务,如没有Git服务请执行第三步
2、 如果执行完第一步发现系统安装了git 服务,请执行此步骤
3、 创建Git安装目录
4、 下载最新Git源码安装包
4.1、方法一:https://mirrors.edge.kernel.org/pub/software/scm/git/
4.2、方法二:在线方式下载Git源码包
5、 解压Git源码包
6、 进入解压后的目录开始进行编译操作
7、在编译时需要底层软件支持,而本地系统没有,所以需要先进行安装,具体来说是安装libssl-dev 找不到相应的头文件,应该进行命令行安装(此步骤需耐心哈)
7.1、根据界面提示安装相关的依赖头文件
7.2、安装完编译需要的头文件后,继续执行第六步骤,此时需要等待一段时间
7.3、此时又弹出错误,根据界面提示安装相关的依赖包
7.4、安装完以上依赖包后,再次执行第六步骤,提示缺少如下依赖包,继续安装
7.5、安装完以上依赖包后,再次执行第六步骤
8、当Git源码编译操作完成后,执行安装操作
9、安装完Git 服务后,配置环境变量
10、验证Git 版本号
11、将git设置为默认路径,不然后面克隆时会报错
至此,CentOS7 就安装上了最新版本的 Git。
二、创建Git用户组和用户账户,用来运行 git 服务
三、创建证书登录
在Git服务器上首先需要将/etc/ssh/sshd_config中将RSA认证打开,
这里我们可以看到公钥存放在 .ssh/authorized_keys 文件中。
所以我们在/home/git下创建.ssh目录,然后创建authorized_keys文件,并将刚生成的公钥导入进去。
备注:
因本地Git仓库与Git远程仓库之间的传输是通过ssh加密处理的,所以收集所有需要登录的用户的公钥,就是他们自己的id_rsa.pub文件,把所有公钥导入到/home/git/.ssh/authorized_keys文件里,一行一个。
登陆用户如何生成公钥请参考以下步骤:
1、用户在Shell(Windows下打开Git Bash)界面输入如下内容即可完成邮箱的注册:
$ git config --global user.name "laoli0201"
(说明:双引号中需要你的用户名,这个可以随便输入,比如“laoli0201”)
$ git config --global user.email "laoli0201@163.com"
(说明: 双引号中需要输入你的有效邮箱,比如“laoli0201@163.com”)
2、在登陆用户在用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下有没有id_rsa和id_rsa.pub这两个文件,如果已经有了,可直接跳到下一步。如果没有,打开Shell(Windows下打开Git Bash),创建SSH Key:
第四步、初始化Git仓库
第五步、假设我们从零开发,那么最好的方式是先创建远程库,再从远程库克隆。
要克隆一个仓库,首先必须知道仓库的地址,然后使用git clone命令克隆。
Git支持多种协议,包括https,但通过ssh支持的原生git协议速度最快。
第六步,登陆用户使用Git相关操作请详见作者《Git操作使用手册》