Ruby 使用rake的目录依赖关系

Ruby 使用rake的目录依赖关系,ruby,directory,rake,Ruby,Directory,Rake,我使用rake复制目录,如下所示: file copied_directory => original_directory do #copy directory end 这很好,除非原始目录中的某些内容发生更改。问题是封闭目录上的mod date没有改变,所以rake不知道再次复制目录。有什么办法处理这个问题吗?不幸的是,我当前的设置不允许我为原始目录中的每个文件设置独立的依赖项。您可以使用rsync保持两个目录的同步,如下所示:您不需要知道依赖它们的文件: file copied_di

我使用rake复制目录,如下所示:

file copied_directory => original_directory do
#copy directory
end

这很好,除非原始目录中的某些内容发生更改。问题是封闭目录上的mod date没有改变,所以rake不知道再次复制目录。有什么办法处理这个问题吗?不幸的是,我当前的设置不允许我为原始目录中的每个文件设置独立的依赖项。

您可以使用rsync保持两个目录的同步,如下所示:

您不需要知道依赖它们的文件:

file copied_directory => FileList[original_directory, original_directory + "/**/*"]

本教程使用符号任务,因此每次都运行rsync(没有依赖项跟踪)。正如@francisco-ryan-tolmasky-i所描述的那样,在文件任务中运行rsync将失败。谢谢您,您的建议使我能够解决类似的问题。为了让它与rsync一起工作,我必须触摸
copied\u目录
,以便rake能够检测到它是最新的,从而避免白运行rsync。