summaryrefslogtreecommitdiff
path: root/Remote.hs
diff options
context:
space:
mode:
Diffstat (limited to 'Remote.hs')
-rw-r--r--Remote.hs4
1 files changed, 3 insertions, 1 deletions
diff --git a/Remote.hs b/Remote.hs
index 456716c6e..22e304de3 100644
--- a/Remote.hs
+++ b/Remote.hs
@@ -81,7 +81,9 @@ byName' "" = return $ Left "no remote specified"
byName' n = handle . filter matching <$> remoteList
where
handle [] = Left $ "there is no available git remote named \"" ++ n ++ "\""
- handle match = Right $ Prelude.head match
+ handle (match:_)
+ | uuid match == NoUUID = Left $ "cannot determine uuid for " ++ name match
+ | otherwise = Right match
matching r = n == name r || toUUID n == uuid r
{- Looks up a remote by name (or by UUID, or even by description),