From 337c3048c1b38ab29b2f727ec96a412e3f571e00 Mon Sep 17 00:00:00 2001 From: Fredrik Kuivinen Date: Sun, 14 Aug 2005 15:09:42 +0200 Subject: [PATCH] Use the same test for a valid git repository that git-sh-setup-script uses. --- git.py | 19 ++++++++----------- 1 file changed, 8 insertions(+), 11 deletions(-) diff --git a/git.py b/git.py index e06e49d..2965738 100644 --- a/git.py +++ b/git.py @@ -6,20 +6,17 @@ def repoValid(): if not os.environ.has_key('GIT_DIR'): os.environ['GIT_DIR'] = '.git' - def basicsFailed(msg): - print "'git-cat-file -t HEAD' failed: " + msg + if not os.environ.has_key('GIT_OBJECT_DIRECTORY'): + os.environ['GIT_OBJECT_DIRECTORY'] = os.environ['GIT_DIR'] + '/objects' + + if not (os.path.exists(os.environ['GIT_DIR']) and + os.path.exists(os.environ['GIT_DIR'] + '/refs') and + os.path.exists(os.environ['GIT_OBJECT_DIRECTORY']) and + os.path.exists(os.environ['GIT_OBJECT_DIRECTORY'] + '/00')): + print "Git archive not found." print "Make sure that the current working directory contains a '.git' directory, or\nthat GIT_DIR is set appropriately." sys.exit(1) - try: - runProgram('git-cat-file -t HEAD') - except OSError, e: - basicsFailed(e.strerror) - except ProgramError, e: - basicsFailed(e.error) - - - parseDiffRE = re.compile(':([0-9]+) ([0-9]+) ([0-9a-f]{40}) ([0-9a-f]{40}) ([MCRNADUT])([0-9]*)') def parseDiff(prog): inp = runProgram(prog) -- 2.11.4.GIT