Added a comment
This commit is contained in:
parent
201ac941a7
commit
29dfc0a9bf
1 changed files with 47 additions and 0 deletions
|
@ -0,0 +1,47 @@
|
|||
[[!comment format=mdwn
|
||||
username="asakurareiko@f3d908c71c009580228b264f63f21c7274df7476"
|
||||
nickname="asakurareiko"
|
||||
avatar="http://cdn.libravatar.org/avatar/a865743e357add9d15081840179ce082"
|
||||
subject="comment 4"
|
||||
date="2021-10-22T15:58:11Z"
|
||||
content="""
|
||||
I understand `annex.thinmode=forcehardlink` presents a greater risk. Personally that's something I can manage. In case anyone else is interested in doing the same, this patch will make `git annex fix` always create hardlinks with `annex.thin=true`.
|
||||
|
||||
```
|
||||
diff --git a/Annex/Content/LowLevel.hs b/Annex/Content/LowLevel.hs
|
||||
index c686e462e..b7cf95d24 100644
|
||||
--- a/Annex/Content/LowLevel.hs
|
||||
+++ b/Annex/Content/LowLevel.hs
|
||||
@@ -57,10 +57,8 @@ linkOrCopy' canhardlink key src dest destmode = catchDefaultIO Nothing $
|
||||
where
|
||||
hardlink = do
|
||||
s <- getstat
|
||||
- if linkCount s > 1
|
||||
- then copy s
|
||||
- else liftIO (R.createLink src dest >> preserveGitMode dest destmode >> return (Just Linked))
|
||||
- `catchIO` const (copy s)
|
||||
+ liftIO (R.createLink src dest >> preserveGitMode dest destmode >> return (Just Linked))
|
||||
+ `catchIO` const (copy s)
|
||||
copy s = ifM (checkedCopyFile' key src dest destmode s)
|
||||
( return (Just Copied)
|
||||
, return Nothing
|
||||
diff --git a/Command/Fix.hs b/Command/Fix.hs
|
||||
index 6a84652ce..40a93b357 100644
|
||||
--- a/Command/Fix.hs
|
||||
+++ b/Command/Fix.hs
|
||||
@@ -62,10 +62,10 @@ start fixwhat si file key = do
|
||||
thin <- annexThin <$> Annex.getGitConfig
|
||||
fs <- liftIO $ catchMaybeIO $ R.getFileStatus file
|
||||
os <- liftIO $ catchMaybeIO $ R.getFileStatus obj
|
||||
- case (linkCount <$> fs, linkCount <$> os, thin) of
|
||||
- (Just 1, Just 1, True) ->
|
||||
+ case (fileID <$> fs, fileID <$> os, thin) of
|
||||
+ (Just n, Just n', True) | n /= n' ->
|
||||
fixby $ makeHardLink file key
|
||||
- (Just n, Just n', False) | n > 1 && n == n' ->
|
||||
+ (Just n, Just n', False) | n == n' ->
|
||||
fixby $ breakHardLink file key obj
|
||||
_ -> stop
|
||||
|
||||
```
|
||||
"""]]
|
Loading…
Reference in a new issue