diff --git a/Services/FileManager.php b/Services/FileManager.php index e74a166..eb6f47c 100644 --- a/Services/FileManager.php +++ b/Services/FileManager.php @@ -109,7 +109,14 @@ public function syncFiles($options = array()) throw new \Exception("to_folder does not exist"); } $result = null; - system("rsync -a --delete " . escapeshellarg($from . '/') . " " . escapeshellarg($to), $result); + if (isset($options['preserve_to_files']) && $options['preserve_to_files']) + { + system(sprintf("rsync -rpgo %s/ %s", escapeshellarg($from . '/'), escapeshellarg($to)), $result); + } + else + { + system(sprintf("rsync -rpgo --delete %s/ %s", escapeshellarg($from . '/'), escapeshellarg($to)), $result); + } if ($result !== 0) { throw new \Exception("Sync failed");