我们的网站位于git之下,以进行源代码控制,并且我们过去能够通过git push发布到我们的生产网站。该服务器是只读的远程服务器。
最近,我们将网站合并为一个更大的monorepo,不得不放弃那种更新服务器的方法。我创建了一个外壳脚本,该脚本使用rsync将其推送到服务器,并且(在添加排除文件之后)它可以工作。
问题:由于时间戳不同,即使99.9%的文件相同,当不同的用户运行脚本时,整个树也会被推送。
那么,当网站是git存储库的子集时,将更改推送到网站的简单有效的方法是什么?我看着git子树,认为它太复杂了。有没有办法使用git列出更改内容,然后使用rsync将那些文件仅推送到服务器?