我们有一个源文件夹,其中包含测试系统的正确基本状态。目前,我们每次都将该源文件夹复制到目标文件夹,并用基本状态覆盖所有内容。当测试在目标文件夹中运行时,它们会修改许多文件,但不是全部。
我们面临的问题是复制命令需要大量时间来复制所有内容,包括基本状态所需的 node_modules 和供应商文件。我想使用 rsync 只覆盖那些从基本状态修改过的文件,以节省测试运行的时间。
这样做的 rsync 语法是什么?
我已经阅读了很多关于使用它仅同步较新文件的信息,但在我们的实例中,目标文件夹将始终比源文件夹更新,因此这不起作用。
默认情况下,Rsync 将通过比较哈希、mtime、大小和其他属性(取决于您选择的选项)来执行此操作。这就是 rsync 的重点;仅复制已更改的数据以使其比直接复制更有效。
编辑添加:这是假设您在两端都有一个 rysnc 友好的文件系统。例如,如果您使用的是 NTFS,那么将复制整个文件,但仍然只复制那些已更改的文件。