summaryrefslogtreecommitdiff
path: root/Remotes.hs
diff options
context:
space:
mode:
authorGravatar Joey Hess <joey@kitenet.net>2010-10-13 23:18:58 -0400
committerGravatar Joey Hess <joey@kitenet.net>2010-10-13 23:18:58 -0400
commit8ab54401b609f49a603f3ed69bb8493a53f28db8 (patch)
tree62daa0a055863b557138ce5adf1231926f3165ae /Remotes.hs
parent64b5167b0f9620bd96cd57b58f0e40be741e5420 (diff)
update
Diffstat (limited to 'Remotes.hs')
-rw-r--r--Remotes.hs12
1 files changed, 9 insertions, 3 deletions
diff --git a/Remotes.hs b/Remotes.hs
index 13b87982c..f3af81f23 100644
--- a/Remotes.hs
+++ b/Remotes.hs
@@ -8,10 +8,11 @@ module Remotes (
import Control.Monad.State (liftIO)
import qualified Data.Map as Map
+import Data.String.Utils
import Types
import GitRepo
import LocationLog
-import Data.String.Utils
+import Locations
import UUID
import List
@@ -24,8 +25,13 @@ remotesWithKey :: Key -> Annex [GitRepo]
remotesWithKey key = do
g <- gitAnnex
uuids <- liftIO $ keyLocations g key
- remotes <- remotesByCost
- reposByUUID remotes uuids
+ allremotes <- remotesByCost
+ remotes <- reposByUUID allremotes uuids
+ if (0 == length remotes)
+ then error $ "no configured git remotes have: " ++ (keyFile key) ++ "\n" ++
+ "It has been seen before in these repositories:\n" ++
+ prettyPrintUUIDs uuids
+ else return remotes
{- Cost Ordered list of remotes. -}
remotesByCost :: Annex [GitRepo]