summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Annex/CatFile.hs6
-rw-r--r--Git/CatFile.hs5
2 files changed, 11 insertions, 0 deletions
diff --git a/Annex/CatFile.hs b/Annex/CatFile.hs
index 88c498d31..b22a090e8 100644
--- a/Annex/CatFile.hs
+++ b/Annex/CatFile.hs
@@ -7,6 +7,7 @@
module Annex.CatFile (
catFile,
+ catFileIndex,
catObject,
catObjectDetails,
catFileHandle
@@ -25,6 +26,11 @@ catFile branch file = do
h <- catFileHandle
liftIO $ Git.CatFile.catFile h branch file
+catFileIndex :: FilePath -> Annex L.ByteString
+catFileIndex file = do
+ h <- catFileHandle
+ liftIO $ Git.CatFile.catFileIndex h file
+
catObject :: Git.Ref -> Annex L.ByteString
catObject ref = do
h <- catFileHandle
diff --git a/Git/CatFile.hs b/Git/CatFile.hs
index e667b2087..1481bb462 100644
--- a/Git/CatFile.hs
+++ b/Git/CatFile.hs
@@ -10,6 +10,7 @@ module Git.CatFile (
catFileStart,
catFileStop,
catFile,
+ catFileIndex,
catObject,
catObjectDetails,
) where
@@ -40,6 +41,10 @@ catFileStop = CoProcess.stop
catFile :: CatFileHandle -> Branch -> FilePath -> IO L.ByteString
catFile h branch file = catObject h $ Ref $ show branch ++ ":" ++ file
+{- Reads a file from the index. -}
+catFileIndex :: CatFileHandle -> FilePath -> IO L.ByteString
+catFileIndex h file = catObject h $ Ref $ ':' : file
+
{- Uses a running git cat-file read the content of an object.
- Objects that do not exist will have "" returned. -}
catObject :: CatFileHandle -> Ref -> IO L.ByteString