当某些重要事件发生时,Git 以调用自定义脚本。有两组挂钩:客户端和服务器端。客户端挂钩用于客户端的操作,如提交和合并。服务器端挂钩用于 Git 服务器端的操作,如接收被推送的提交。
此教程的前提是要求你服务器上必须有个 git 仓库,创建 git 仓库的教程可以参考这篇文章 在CentOS7上搭建自己的Git服务器
以我的 git 仓库 /srv/GitLibrary/blog.git
为例
创建钩子脚本
BASH
写入两句话
BASH
然后
BASH
过程很简单,总结一下:
当客户端 push 完成以后,紧接着远端仓库触发我们定义的钩子脚本,
那句命令会将 /srv/GitLibrary/blog.git
最新版本 checkout 到 /srv/www/blog
中。
你可以自定义这俩目录路径,但是需要注意一点的是该目录必须有写入权限,否则会因为没有权限导致部署失败。
可以使用 chmod 命令赋予权限,以我的文件夹 /srv/www/blog
为例
BASH
OK,大功告成,当客户端 push 完成以后,最新代码就会自动部署到你指定的目录了。🎉🎉🎉