diff options
author | Joey Hess <id@joeyh.name> | 2015-12-15 17:47:59 -0700 |
---|---|---|
committer | Joey Hess <id@joeyh.name> | 2015-12-15 17:47:59 -0700 |
commit | 7c12f0ac9224246dac308e837bccb5b2157062ee (patch) | |
tree | 0caa943db39f9a2bfad404c547acda354076b46a /Git/Version.hs | |
download | git-repair-7c12f0ac9224246dac308e837bccb5b2157062ee.tar.gz |
Import git-repair_1.20151215.orig.tar.xz
[dgit import orig git-repair_1.20151215.orig.tar.xz]
Diffstat (limited to 'Git/Version.hs')
-rw-r--r-- | Git/Version.hs | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/Git/Version.hs b/Git/Version.hs new file mode 100644 index 0000000..19ff945 --- /dev/null +++ b/Git/Version.hs @@ -0,0 +1,32 @@ +{- git versions + - + - Copyright 2011, 2013 Joey Hess <id@joeyh.name> + - + - Licensed under the GNU GPL version 3 or higher. + -} + +{-# OPTIONS_GHC -fno-warn-tabs #-} + +module Git.Version ( + installed, + older, + normalize, + GitVersion, +) where + +import Common +import Utility.DottedVersion + +type GitVersion = DottedVersion + +installed :: IO GitVersion +installed = normalize . extract <$> readProcess "git" ["--version"] + where + extract s = case lines s of + [] -> "" + (l:_) -> unwords $ drop 2 $ words l + +older :: String -> IO Bool +older n = do + v <- installed + return $ v < normalize n |