migrate: Fix support for --backend option.
This commit is contained in:
parent
b557a2ccf4
commit
e18a4d566b
3 changed files with 10 additions and 4 deletions
|
@ -27,15 +27,20 @@ seek :: [CommandSeek]
|
|||
seek = [withBackendFilesInGit start]
|
||||
|
||||
start :: CommandStartBackendFile
|
||||
start (_, Nothing) = return Nothing
|
||||
start (file, Just newbackend) = isAnnexed file $ \(key, oldbackend) -> do
|
||||
start (file, b) = isAnnexed file $ \(key, oldbackend) -> do
|
||||
exists <- inAnnex key
|
||||
newbackend <- choosebackend b
|
||||
if (newbackend /= oldbackend) && exists
|
||||
then do
|
||||
showStart "migrate" file
|
||||
return $ Just $ perform file key newbackend
|
||||
else
|
||||
return Nothing
|
||||
where
|
||||
choosebackend Nothing = do
|
||||
backends <- Backend.list
|
||||
return $ head backends
|
||||
choosebackend (Just backend) = return backend
|
||||
|
||||
perform :: FilePath -> Key -> Backend -> CommandPerform
|
||||
perform file oldkey newbackend = do
|
||||
|
|
1
debian/changelog
vendored
1
debian/changelog
vendored
|
@ -4,6 +4,7 @@ git-annex (0.18) UNRELEASED; urgency=low
|
|||
after transferring the file to the remote repository.
|
||||
(Did not affect ssh remotes.)
|
||||
* fsck: Fix bug in moving of corrupted files to .git/annex/bad/
|
||||
* migrate: Fix support for --backend option.
|
||||
* Test suite improvements. Current top-level test coverage: 75%
|
||||
|
||||
-- Joey Hess <joeyh@debian.org> Tue, 11 Jan 2011 16:05:25 -0400
|
||||
|
|
4
test.hs
4
test.hs
|
@ -328,8 +328,8 @@ test_migrate = "git-annex migrate" ~: TestList [t False, t True]
|
|||
if usegitattributes
|
||||
then do
|
||||
writeFile ".gitattributes" "* annex.backend=SHA1"
|
||||
git_annex "migrate" [sha1annexedfile] @? "migrate to same backend failed"
|
||||
git_annex "migrate" [annexedfile] @? "migrate to different backend failed"
|
||||
git_annex "migrate" ["-q", sha1annexedfile] @? "migrate to same backend failed"
|
||||
git_annex "migrate" ["-q", annexedfile] @? "migrate to different backend failed"
|
||||
else do
|
||||
git_annex "migrate" [sha1annexedfile, "--backend=SHA1"] @? "migrate to same backend failed"
|
||||
git_annex "migrate" [annexedfile, "--backend=SHA1"] @? "migrate to different backend failed"
|
||||
|
|
Loading…
Reference in a new issue