aboutsummaryrefslogtreecommitdiff
path: root/Utility/CopyFile.hs
diff options
context:
space:
mode:
authorGravatar Joey Hess <joeyh@joeyh.name>2015-04-18 14:13:07 -0400
committerGravatar Joey Hess <joeyh@joeyh.name>2015-04-18 14:13:07 -0400
commit5f62e03e618b20a32e3a927be2bdf71dd525d5ae (patch)
tree36bcf9cbc26629f24f65ef5ad0e5629b7f3901b3 /Utility/CopyFile.hs
parent293903ba38209a1e574ab6a929872ac5c31dfaf4 (diff)
fsck --from remote: When bad content is found in the remote, and the local repo does not have a copy of the content, preserve the bad content in .git/annex/bad/ to avoid further data loss.
Diffstat (limited to 'Utility/CopyFile.hs')
-rw-r--r--Utility/CopyFile.hs7
1 files changed, 6 insertions, 1 deletions
diff --git a/Utility/CopyFile.hs b/Utility/CopyFile.hs
index b123d006d..1c07ca110 100644
--- a/Utility/CopyFile.hs
+++ b/Utility/CopyFile.hs
@@ -16,7 +16,12 @@ module Utility.CopyFile (
import Common
import qualified Build.SysConfig as SysConfig
-data CopyMetaData = CopyTimeStamps | CopyAllMetaData
+data CopyMetaData
+ -- Copy timestamps when possible, but no other metadata, and
+ -- when copying a symlink, makes a copy of its content.
+ = CopyTimeStamps
+ -- Copy all metadata when possible.
+ | CopyAllMetaData
deriving (Eq)
{- The cp command is used, because I hate reinventing the wheel,