目录
一、 Git服务器概述
在实际的开发中,都是一个团队协同开发,共享代码资源。那么就需要服务器来存放团队的代码,需要用的时候从服务器下载。首先找一台电脑充当服务器的角色,每天24小时开机,其他每个人都从这个“服务器”仓库克隆一份到自己的电脑上,并且各自把各自的提交推送到服务器仓库里,也从服务器仓库中拉取别人的提交。可以自己搭建这台服务器,也可以使用GitHub、码云网站作为Git服务器。
二、 搭建Git服务器
Centos7操作系统的云服务器搭建Git环境
2.1 服务器端安装git
(一)检查Centos有没有自带或者安装git,查询版本 命令:git –version (二)如果存在,则查询git详情 命令:rpm -qa git (三)删除存在的git 命令:yum -y remove xxxx (四)如果没有查询到使用yum安装 命令:yum -y install git |
2.2 服务器端创建git用户
(一)创建开发组dev 命令:groupadd dev (二)新增git用户(所属dev组) 命令:useradd -m -g dev git (三)设置git密码 命令:passwd git (四)修改home目录下git文件的权限 命令:chmod 755 /home/git (五)切换至git用户 命令:su git (六)进入git用户所在的home目录 命令:cd (七)创建.ssh文件,并赋予权限 命令:mkdir .ssh && chmod 700 .ssh (八)在.ssh文件中创建公钥存储文件authorized_keys,同时赋予权限 命令:touch .ssh/authorized_keys && chmod 600 .ssh/authorized_keys |
2.3 服务器端创建git仓库
(一)初始化空的git版本库 命令:[git@localhost ~]$ git init --bare /home/git/repository/gittest.git |
2.4 服务器端打开RSA认证
(一)切换root用户 命令:su (二)进入 /etc/ssh 目录,编辑 sshd_config,把下面内容的前面的#号去掉: RSAAuthentication yes PubkeyAuthentication yes AuthorizedKeysFile .ssh/authorized_keys 【注意】 由AuthorizedKeysFile 得知公钥的存放路径是 .ssh/authorized_keys,实际上是 $Home/.ssh/authorized_keys,由于管理 Git 服务的用户是 git,所以实际存放公钥的路径是 /home/git/.ssh/authorized_keys (三)进入 /etc/ssh 目录,编辑 sshd_config,注释掉密码认证: #PasswordAuthentication yes (四)重启 sshd 服务 命令:systemctl restart sshd.service |
2.5 客户端创建SSH公钥和私钥
(一)生成ssh密钥。 命令:ssh-keygen -t rsa -C "邮箱地址" |
2.6 服务器端authorized_keys添加客户端公钥
命令:[root@localhost git]# cat id_rsa1.pub >> .ssh/authorized_keys 【注意】多个公钥都采用这种形式添加 |
2.7 禁止git用户SSH登录服务
(一)编辑 /etc/passwd 命令:[root@server01 git]# vi /etc/passwd (二)找到:git:x:502:504::/home/git:/bin/bash (三)修改:git:x:502:504::/home/git:/bin/git-shell |
2.8 客户端拉取服务端项目
(一)进入Git仓库,获取项目绝对路径 命令:[root@server01 gittest.git]# pwd (二)Git客户端克隆项目 命令:git clone git@IP: /home/git/repository/gittest.git |