git-annex adjust --lock-missing
Like --hide-missing the branch does not get updated when content availability changes. Seems to basically work, but sync does not update it yet. Also, when a file is present and so unlocked, git mv followed by git-annex sync results in the basis branch being updated to contain the file with the new name, unlocked. This seems different than what happens in an adjusted unlocked branch, where the commit propigates back locked. Probably the reverse adjustment code needs to be improved to handle this case.
This commit is contained in:
parent
81f801c3b4
commit
c8e49c5ef5
6 changed files with 106 additions and 23 deletions
|
@ -1,6 +1,6 @@
|
|||
{- adjusted branch names
|
||||
-
|
||||
- Copyright 2016-2018 Joey Hess <id@joeyh.name>
|
||||
- Copyright 2016-2020 Joey Hess <id@joeyh.name>
|
||||
-
|
||||
- Licensed under the GNU AGPL version 3 or higher.
|
||||
-}
|
||||
|
@ -37,12 +37,16 @@ instance SerializeAdjustment Adjustment where
|
|||
serializeAdjustment p
|
||||
serializeAdjustment (PresenceAdjustment p (Just l)) =
|
||||
serializeAdjustment p <> "-" <> serializeAdjustment l
|
||||
serializeAdjustment (LinkMissingAdjustment l) =
|
||||
serializeAdjustment l
|
||||
deserializeAdjustment s =
|
||||
(LinkAdjustment <$> deserializeAdjustment s)
|
||||
<|>
|
||||
(PresenceAdjustment <$> deserializeAdjustment s1 <*> pure (deserializeAdjustment s2))
|
||||
<|>
|
||||
(PresenceAdjustment <$> deserializeAdjustment s <*> pure Nothing)
|
||||
<|>
|
||||
(LinkMissingAdjustment <$> deserializeAdjustment s)
|
||||
where
|
||||
(s1, s2) = separate' (== (fromIntegral (ord '-'))) s
|
||||
|
||||
|
@ -64,6 +68,13 @@ instance SerializeAdjustment PresenceAdjustment where
|
|||
deserializeAdjustment "showmissing" = Just ShowMissingAdjustment
|
||||
deserializeAdjustment _ = Nothing
|
||||
|
||||
instance SerializeAdjustment LinkMissingAdjustment where
|
||||
serializeAdjustment LockMissingAdjustment = "lockmissing"
|
||||
serializeAdjustment UnlockMissingAdjustment = "unlockmissing"
|
||||
deserializeAdjustment "lockmissing" = Just LockMissingAdjustment
|
||||
deserializeAdjustment "unlockmissing" = Just UnlockMissingAdjustment
|
||||
deserializeAdjustment _ = Nothing
|
||||
|
||||
newtype AdjBranch = AdjBranch { adjBranch :: Branch }
|
||||
|
||||
originalToAdjusted :: OrigBranch -> Adjustment -> AdjBranch
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue