linux搭建git服务器及自动化部署

1. 安装git

在linux上使用yum安装git很是简单,只须要一行命令linux

yum install git

安装完成后可使用git --version命令检查是否安装成功,这是查看git版本号的命令git

git --version

安装成功会显示git的版本号vim

git version 2.18.2

2. 建立git用户来管理git服务

groupadd git
useradd git -g git

3. 建立证书

su git
cd /home/git
mkdir .ssh
chmod 700 .ssh
touch .ssh/authorized_keys
chmod 600 .ssh/authorized_keys

注意:.ssh的权限必须是700,authorized_keys的权限必须是600服务器

4. 初始化git仓库

为了方便管理,建议建立一个目录来存储git仓库ssh

cd /
mkdir git#建立目录
cd /git
mkdir project#根据你的项目名称建立该项目的仓库存储目录
cd project
git init --bare project.git#初始化git仓库

建立成功后会有如下提示:post

Initialized empty Git repository in /git/project/project.git/

5. 打开RSA认证

vim /etc/ssh/sshd_config

打开一下三项配置前的注释,若没有则在最后添加rest

RSAAuthentication yes     
PubkeyAuthentication yes     
AuthorizedKeysFile  .ssh/authorized_keys

修改保存后重启sshd服务code

systemctl restart sshd.service

6. 拷贝客户端公钥内容到authorized_keys

将客户端公钥id_rsa.pub文件的内容复制到服务器端 /home/git/.ssh/authorized_keys文件里,多个公钥复制时要注意换行,每行只能添加一个公钥部署

7. 利用git钩子实现自动化部署

cd /git/project/project.git/hooks
vim post-receive#在客户端push完成后运行,能够用来更新其它系统服务或者通知消息

将入下代码复制进去 ,并保存退出it

git --work-tree=/home/wwwroot/project --git-dir=/git/project/project.git checkout -f
#"/home/wwwroot/project"是你的工做目录,你想把文件文件推送到哪里,"/git/project/project.git"是你刚才建立的git仓库目录

给钩子文件添加执行权限

chmod +x post-receive

至此linux下搭建git服务器及自动化部署就算完成了

相关文章
相关标签/搜索