gitlib-3.1.0: Git/Reference.hs
module Git.Reference where
import Conduit
import Git.Types
listReferences :: MonadGit r m => m [RefName]
listReferences = sourceReferences $$ sinkList
resolveReference :: MonadGit r m => RefName -> m (Maybe (Oid r))
resolveReference name = do
mref <- lookupReference name
maybe (return Nothing) referenceToOid mref
referenceToOid :: MonadGit r m => RefTarget r -> m (Maybe (Oid r))
referenceToOid (RefObj oid) = return $ Just oid
referenceToOid (RefSymbolic name) = resolveReference name