ssh: support reflinks in Darwin

This commit is contained in:
Mr. Outis
2019-09-06 13:24:25 -05:00
parent dd1d5bdbb0
commit b66996e0a1
+9 -1
View File
@@ -295,7 +295,15 @@ class SSHConnection:
self.sftp.symlink(src, dest)
def reflink(self, src, dest):
self.execute("cp --reflink {} {}".format(src, dest))
if self.uname == "Linux":
return self.execute("cp --reflink {} {}".format(src, dest))
if self.uname == "Darwin":
return self.execute("cp -c {} {}".format(src, dest))
raise DvcException(
"'{}' is not supported as a SSH remote".format(self.uname)
)
def hardlink(self, src, dest):
self.execute("ln {} {}".format(src, dest))