diff --git a/src/bin/cook.rs b/src/bin/cook.rs index ff9345ad..5d48a10b 100644 --- a/src/bin/cook.rs +++ b/src/bin/cook.rs @@ -228,14 +228,17 @@ fn fetch(recipe_dir: &Path, source: &Option) -> Result { - copy_dir_all(path, &source_dir).map_err(|e| { - format!( - "Couldn't copy source from {} to {}: {}", - path, - source_dir.display(), - e - ) - })?; + if modified_dir(Path::new(path))? > modified_dir(&source_dir)? { + eprintln!("[DEBUG]: {} is newer than {}", path, source_dir.display()); + copy_dir_all(path, &source_dir).map_err(|e| { + format!( + "Couldn't copy source from {} to {}: {}", + path, + source_dir.display(), + e + ) + })?; + } } Some(SourceRecipe::Git { git,