"""
import os
-
-class BaseDirException(Exception):
- pass
-
-def __output(cmd):
- f = os.popen(cmd, 'r')
- string = f.readline().rstrip()
- if f.close():
- raise BaseDirException, 'Error: failed to execute "%s"' % cmd
- return string
+from stgit.run import *
# GIT_DIR value cached
__base_dir = None
if 'GIT_DIR' in os.environ:
__base_dir = os.environ['GIT_DIR']
else:
- __base_dir = __output('git-rev-parse --git-dir')
+ try:
+ __base_dir = Run('git', 'rev-parse', '--git-dir').output_one_line()
+ except RunException:
+ __base_dir = ''
return __base_dir
+
+def clear_cache():
+ """Clear the cached location of .git
+ """
+ global __base_dir
+ __base_dir = None