使用 Git 自动构建和部署网站

主要观点:近期开始设置自托管的cgit服务器作为主要代码库,起初考虑多种自动化部署工具但都不合适,后意识到可利用git内置的post-receive钩子,详细记录了整个过程,包括准备服务器(确保git仓库可ssh访问部署服务器并在部署服务器克隆git仓库)、编写post-receive脚本(根据自身项目需求编写,如构建个人网站,包含ssh连接到服务器、执行构建命令、同步构建目录等步骤)、测试(在git项目中推送更改到master分支查看脚本执行效果及网站变化),同时仍使用sourcehut进行仓库镜像和邮件列表处理。
关键信息:需已设置git服务器,可基于cgit在 NearlyFreeSpeech 上运行,post-receive脚本可实现远程推送master分支时自动构建和部署项目,要注意给脚本赋予正确权限。
重要细节:脚本中通过if判断推送分支是否为masterssh连接到部署服务器执行构建命令,使用rsync同步构建目录到公共网站目录等。

阅读 12
0 条评论