summaryrefslogtreecommitdiff
path: root/Core.hs
diff options
context:
space:
mode:
Diffstat (limited to 'Core.hs')
-rw-r--r--Core.hs12
1 files changed, 10 insertions, 2 deletions
diff --git a/Core.hs b/Core.hs
index 4941dc26b..da05823bb 100644
--- a/Core.hs
+++ b/Core.hs
@@ -62,11 +62,19 @@ gitAttributes repo = do
Git.run repo ["commit", "-m", "git-annex setup",
attributes]
-{- Checks if a given key is currently present in the annexLocation -}
+{- Checks if a given key is currently present in the annexLocation.
+ -
+ - This can be run against a remote repository to check the key there. -}
inAnnex :: Key -> Annex Bool
inAnnex key = do
g <- Annex.gitRepo
- liftIO $ doesFileExist $ annexLocation g key
+ if (not $ Git.repoIsUrl g)
+ then liftIO $ doesFileExist $ annexLocation g key
+ else do
+ showNote ("checking " ++ Git.repoDescribe g ++ "...")
+ liftIO $ boolSystem "ssh" [Git.urlHost g,
+ "test -e " ++
+ (shellEscape $ annexLocation g key)]
{- Calculates the relative path to use to link a file to a key. -}
calcGitLink :: FilePath -> Key -> Annex FilePath