阿里云centos搭建nodejs服务器(二) --服务器代码自动部署

git hook 即git钩子,同时我们还需要一个裸仓库,原理就是当我们向服务器的裸仓库push代码时,就会触发钩子执行已经写好的脚本。脚本执行命令,将代码拉到www服务器的文件目录。

// 小技巧,可以在你的host里面绑定你的ip,为你的名字,那么接下来就可以
ssh zhenping@zhenping //链接你的服务器了。

image.png

首先,先了解一下centos的文件目录。cd ~即是用户目录,在/home/username中


image.png

image.png

本次所有操作都在根目录操作。

sudo git init --bare gitProject.git //裸仓库
mkdir www //web文件
cd www 
git clone /gitProject.git
//若是不能克隆,就先初始化,然后设置git 路径
git init
git remote add origin /gitProject.git

// 设置git hooks
cd  /gitProject.git/hooks/
vim post-receive
//插入一下代码,然后保存退出
#!/bin/sh
unset GIT_DIR
cd /www
git fetch --all
git reset --hard origin/master

// 赋予 post-receive 文件可执行权限
chmod +x post-receive

接下来,在本地新建一个文件夹 /test

 git init
 git remote add origin username@server_ip:/path/xxx.git
image.png

此时www文件下是空的


image.png

然后我们新建一个txt文件,内容如下


image.png

执行git命令上传
image.png

检查远程服务器/www文件夹
image.png

vim test.txt
查看内容


image.png

搞定啦。

你可能感兴趣的:(阿里云centos搭建nodejs服务器(二) --服务器代码自动部署)