From 990d1fe06e8c2db48a895aaa7e5e5eda8b330a5c Mon Sep 17 00:00:00 2001 From: Florian Apolloner Date: Wed, 25 Jun 2008 00:41:41 +0200 Subject: fixed http://groups.google.com/group/git-python/browse_thread/thread/b8f3580abf31f9db?hl=en# and passed Git a working_tree again (sort of). --- lib/git/utils.py | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) (limited to 'lib/git/utils.py') diff --git a/lib/git/utils.py b/lib/git/utils.py index c2140ba0..656e783c 100644 --- a/lib/git/utils.py +++ b/lib/git/utils.py @@ -1,5 +1,20 @@ +import os + def dashify(string): return string.replace('_', '-') def touch(filename): - open(filename, "a").close() + os.utime(filename) + +def is_git_dir(d): + """ This is taken from the git setup.c:is_git_directory + function.""" + + if os.path.isdir(d) and \ + os.path.isdir(os.path.join(d, 'objects')) and \ + os.path.isdir(os.path.join(d, 'refs')): + headref = os.path.join(d, 'HEAD') + return os.path.isfile(headref) or \ + (os.path.islink(headref) and + os.readlink(headref).startswith('refs')) + return False -- cgit v1.2.1