add: Fix reversion in 4.20130827 when adding unlocked files that have not yet been committed.

catKeyFileHEAD is still checked too, because when doing a git commit with
unlocked files, the file gets staged to the index, so is not typechanged
there.

(This is also why git annex add foo; git annex unlock foo; git commit -a
does not re-annex foo, because there is no indication left that it was
added.)
This commit is contained in:
Joey Hess 2013-10-28 13:46:21 -04:00
parent 26d95e86d7
commit 780a24374f
2 changed files with 4 additions and 1 deletions

View file

@ -96,7 +96,8 @@ withFilesUnlockedToBeCommitted = withFilesUnlocked' LsFiles.typeChangedStaged
withFilesUnlocked' :: ([FilePath] -> Git.Repo -> IO ([FilePath], IO Bool)) -> (FilePath -> CommandStart) -> CommandSeek
withFilesUnlocked' typechanged a params = prepFiltered a unlockedfiles
where
check f = liftIO (notSymlink f) <&&> isJust <$> catKeyFileHEAD f
check f = liftIO (notSymlink f) <&&>
(isJust <$> catKeyFile f <||> isJust <$> catKeyFileHEAD f)
unlockedfiles = filterM check =<< seekHelper typechanged params
{- Finds files that may be modified. -}

2
debian/changelog vendored
View file

@ -12,6 +12,8 @@ git-annex (4.20131025) UNRELEASED; urgency=low
be done without losing data.
* assistant: Support repairing git remotes that are locally accessible
(eg, on removable drives).
* add: Fix reversion in 4.20130827 when adding unlocked files that have
not yet been committed.
-- Joey Hess <joeyh@debian.org> Sat, 26 Oct 2013 12:11:48 -0400