diff options
author | 2012-12-25 14:10:07 -0400 | |
---|---|---|
committer | 2012-12-25 14:10:07 -0400 | |
commit | bf3472bb1409d9879272471420d6724ee4ed096b (patch) | |
tree | 2a8e96b9c2130298897b6adcf2ac3dabd421ce71 | |
parent | 399b31f5f3adfe2b9cd662c8b0e8127067568364 (diff) |
use sync command merge engine in assistant
To handle direct mode merging.
-rw-r--r-- | Assistant/Threads/Merger.hs | 5 | ||||
-rw-r--r-- | Command/Sync.hs | 2 | ||||
-rw-r--r-- | doc/design/assistant/desymlink.mdwn | 6 |
3 files changed, 9 insertions, 4 deletions
diff --git a/Assistant/Threads/Merger.hs b/Assistant/Threads/Merger.hs index 105f0cc9f..c581f8087 100644 --- a/Assistant/Threads/Merger.hs +++ b/Assistant/Threads/Merger.hs @@ -14,8 +14,8 @@ import Utility.DirWatcher import Utility.Types.DirWatcher import qualified Annex.Branch import qualified Git -import qualified Git.Merge import qualified Git.Branch +import qualified Command.Sync thisThread :: ThreadName thisThread = "Merger" @@ -80,8 +80,7 @@ onAdd file [ "merging", show changedbranch , "into", show current ] - void $ liftAnnex $ inRepo $ - Git.Merge.mergeNonInteractive changedbranch + void $ liftAnnex $ Command.Sync.mergeFrom changedbranch mergecurrent _ = noop equivBranches :: Git.Ref -> Git.Ref -> Bool diff --git a/Command/Sync.hs b/Command/Sync.hs index e70524ee3..f7241ce82 100644 --- a/Command/Sync.hs +++ b/Command/Sync.hs @@ -1,7 +1,7 @@ {- git-annex command - - - Copyright 2011 Joey Hess <joey@kitenet.net> - Copyright 2011 Joachim Breitner <mail@joachim-breitner.de> + - Copyright 2011,2012 Joey Hess <joey@kitenet.net> - - Licensed under the GNU GPL version 3 or higher. -} diff --git a/doc/design/assistant/desymlink.mdwn b/doc/design/assistant/desymlink.mdwn index f2ba914bc..45229f3f3 100644 --- a/doc/design/assistant/desymlink.mdwn +++ b/doc/design/assistant/desymlink.mdwn @@ -87,6 +87,12 @@ is converted to a real file when it becomes present. * Deal with files changing as they're being transferred from a direct mode repository to another git repository. The remote repo currently will accept the bad data and update the location log to say it has the key. +* When the assistant adds a modified direct mode file, it leaves behind + an associated files mapping to the file for the old key as well. That + needs to be deleted (sync deletes it in the similar situation). +* kqueue does not deliver an event when an existing file is modified; + need a different way to detect file modifications (possibly an OSX specific + interface?) ## done |