diff --git a/dvc/remote/base.py b/dvc/remote/base.py index d8679e5c8..9a387774a 100644 --- a/dvc/remote/base.py +++ b/dvc/remote/base.py @@ -364,7 +364,6 @@ class RemoteBASE(object): cache_info = self.checksum_to_path_info(checksum) if self.changed_cache(checksum): - self.makedirs(cache_info.parent) self.move(path_info, cache_info) else: self.remove(path_info) diff --git a/dvc/remote/local/__init__.py b/dvc/remote/local/__init__.py index 9c1a242a0..816cdaa2e 100644 --- a/dvc/remote/local/__init__.py +++ b/dvc/remote/local/__init__.py @@ -243,6 +243,8 @@ class RemoteLOCAL(RemoteBASE): if from_info.scheme != "local" or to_info.scheme != "local": raise NotImplementedError + self.makedirs(to_info.parent) + if self.isfile(from_info): mode = self._file_mode else: