threads / patch / 2686

patchcg-Xlib: use git-rev-parse to locate .git dir and set relpath

Subject: [PATCH] cg-Xlib: use git-rev-parse to locate .git dir and set relpath

## tl;dr

One message between Nov 27, 2005 and Nov 27, 2005. Diffs are folded; open one to read it.

replies: 0people: 1as markdown or json

Jonas Fonseca· Nov 27, 2005, 15:55 UTC · lore
Signed-off-by: Jonas Fonseca <fonseca@diku.dk>
---
Show changes to cg-Xlib +4 −10
diff --git a/cg-Xlib b/cg-Xlib
index dedbb62..e3c365f 100755
--- a/cg-Xlib
+++ b/cg-Xlib
@@ -502,16 +502,10 @@ fi
 
 _git=${GIT_DIR:-.git}
 if [ ! "$_git_repo_unneeded" ] && [ ! "$GIT_DIR" ] && [ ! -d $_git ]; then
-	rootpath=.
-	# while not /
-	while [ ! -d $rootpath/.git ] && [ "$(stat -c %i $rootpath)" != "$(stat -c %i $rootpath/..)" ]; do
-		rootpath=../$rootpath
-	done
-	if [ -d $rootpath/.git ]; then
-		mainpath="$(echo "$(pwd)/$rootpath" | normpath)"
-		_git_relpath=$(pwd)/
-		export _git_relpath=${_git_relpath:$((${#mainpath}+1))}
-		cd "$rootpath"
+	_git_abs_path="$(git-rev-parse --git-dir 2>/dev/null)"
+	if [ -d "$_git_abs_path" ]; then
+		export _git_relpath="$(git-rev-parse --show-prefix)"
+		cd "$_git_abs_path/.."
 	fi
 fi
 _git_objects="${GIT_OBJECT_DIRECTORY:-$_git/objects}"
-- 
Jonas Fonseca

← back to recent threads