From 2bbe9d9877a40c2df830451c4b840e3097e31186 Mon Sep 17 00:00:00 2001
From: Jerome Reybert <jreybert@gmail.com>
Date: Sun, 6 Dec 2015 23:06:58 +0100
Subject: [PATCH] autoload/git.vim: add git version functions

---
 autoload/magit/git.vim | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/autoload/magit/git.vim b/autoload/magit/git.vim
index 6e5f12f..222c9b8 100644
--- a/autoload/magit/git.vim
+++ b/autoload/magit/git.vim
@@ -1,5 +1,21 @@
 let s:git_cmd="GIT_CONFIG=/dev/null GIT_CONFIG_NOSYSTEM=1 XDG_CONFIG_HOME=/ git"
 
+function! magit#git#get_version()
+	if ( !exists("s:git_version") )
+		let s:git_version = matchlist(system(s:git_cmd . " --version"),
+		\ 'git version \(\d\+\)\.\(\d\+\)\.\(\d\+\)\.\(\d\+\)\.\(g\x\+\)')[1:5]
+	endif
+	return s:git_version
+endfunction
+
+function! magit#git#is_version_sup_equal(major, minor, rev)
+	let git_ver = magit#git#get_version()
+	return ( ( a:major > git_ver[0] ) ||
+			\ (a:major >= git_ver[0] && a:minor > git_ver[1] ) ||
+			\ (a:major >= git_ver[0] && a:minor >= git_ver[1] && a:rev >= git_ver[2] )
+			\ )
+endfunction
+
 " magit#git#get_status: this function returns the git status output formated
 " into a List of Dict as
 " [ {staged', 'unstaged', 'filename'}, ... ]
-- 
GitLab