Git 什么';What’将文件推送到我们的制作网站是一种很好(且简单)的方法?

Git 什么';What’将文件推送到我们的制作网站是一种很好(且简单)的方法?,git,publish,rsync,monorepo,Git,Publish,Rsync,Monorepo,我们的网站是在git下进行源代码控制的,我们过去可以通过git推送发布到我们的生产网站。服务器是只读远程服务器 最近,我们将该网站合并为一个更大的monorepo,不得不放弃更新服务器的方法。我创建了一个shell脚本,它使用rsync将其推送到服务器,并且(在添加排除文件后)它可以工作 问题是:由于时间戳的不同,当不同的用户运行脚本时,整个树会被推上,即使99.9%的文件是相同的 那么,当网站是git存储库的一个子集时,什么是将更改推送到网站的简单而有效的方法呢?我看着git子树,觉得太复杂了

我们的网站是在git下进行源代码控制的,我们过去可以通过git推送发布到我们的生产网站。服务器是只读远程服务器

最近,我们将该网站合并为一个更大的monorepo,不得不放弃更新服务器的方法。我创建了一个shell脚本,它使用rsync将其推送到服务器,并且(在添加排除文件后)它可以工作

问题是:由于时间戳的不同,当不同的用户运行脚本时,整个树会被推上,即使99.9%的文件是相同的


那么,当网站是git存储库的一个子集时,什么是将更改推送到网站的简单而有效的方法呢?我看着git子树,觉得太复杂了。有没有一种方法可以使用git创建一个更改的文件列表,然后使用rsync只将这些文件推送到服务器上?

rsync是否可以根据文件内容跳过文件(忽略时间戳)?您应该发布正在使用的确切rsync调用。rsync-avH-esh--exclude from=do\u not\u rsync。username@servername:rootdir我不确定什么方法最适合您,但我知道使用git作为分发工具是个坏主意。@mkrieger1是正确的。c选项将始终与校验和进行比较,这应该对我有用。谢谢