在git应用的hooks目录中,创建post-receive文件,添加内容如下:

#!/bin/sh

DEPLOY_PATH=写Web站点目录

将 master 以zip格式打包到指定文件(裸仓库中执行)

echo "git账号的密码" | sudo -S git archive --format zip --output file.zip master

将打包好的剪切到web目录

echo "git账号的密码" | sudo -S mv file.zip $DEPLOY_PATH

unset GIT_DIR

cd $DEPLOY_PATH

echo "git账号的密码" | sudo -S unzip -o file.zip 

echo "git账号的密码" | sudo -S rm -rf file.zip 

echo "git账号的密码" | sudo -S chown www:www -R $DEPLOY_PATH

保存后赋予可执行权限:

sudo chmod  +x  /path/to/test.git/hooks/post-receive
sudo chown -R git:git /path/to/test.git

这里使用echo "git账号的密码" | sudo -S Command 是为了解决出现remote...Operation Not Permitted问题。

然后通过Git Bash在本地对远程仓库进行增加或删除修改操作,接着执行git push相关命令之后,便可完成代码的自动部署。