sync: Automatic merge conflict resolution now stages deleted files.

This commit is contained in:
Joey Hess 2013-01-17 21:19:00 -04:00
parent a75946fc6f
commit 49f4ba297c
2 changed files with 7 additions and 1 deletions

View file

@ -223,11 +223,16 @@ resolveMerge = do
top <- fromRepo Git.repoPath
(fs, cleanup) <- inRepo (LsFiles.unmerged [top])
merged <- all id <$> mapM resolveMerge' fs
void $ liftIO cleanup
(deleted, cleanup2) <- inRepo (LsFiles.deleted [top])
Annex.Queue.addCommand "rm" [Params "--quiet -f --"] deleted
void $ liftIO cleanup2
when merged $ do
Annex.Queue.flush
void $ inRepo $ Git.Command.runBool "commit"
[Param "-m", Param "git-annex automatic merge conflict fix"]
void $ liftIO cleanup
return merged
resolveMerge' :: LsFiles.Unmerged -> Annex Bool

1
debian/changelog vendored
View file

@ -13,6 +13,7 @@ git-annex (3.20130115) UNRELEASED; urgency=low
* bugfix: Union merges involving two or more repositories could sometimes
result in data from one repository getting lost. This could result
in the location log data becoming wrong, and fsck being needed to fix it.
* sync: Automatic merge conflict resolution now stages deleted files.
* Depend on git 1.7.7.6 for --no-edit. Closes: #698399
-- Joey Hess <joeyh@debian.org> Mon, 14 Jan 2013 18:35:01 -0400