summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xsupport/download/git13
1 files changed, 8 insertions, 5 deletions
diff --git a/support/download/git b/support/download/git
index 381f3ceeb3..c166ae2813 100755
--- a/support/download/git
+++ b/support/download/git
@@ -34,25 +34,28 @@ done
shift $((OPTIND-1)) # Get rid of our options
+# We want to check if a cache of the git clone of this repo already exists.
+git_cache="${dl_dir}/git"
+
# Caller needs to single-quote its arguments to prevent them from
# being expanded a second time (in case there are spaces in them)
_git() {
- eval ${GIT} "${@}"
+ eval GIT_DIR="${git_cache}/.git" ${GIT} "${@}"
}
-# We want to check if a cache of the git clone of this repo already exists.
-git_cache="${dl_dir}/git"
-
# If the cache directory doesn't exists, init a new repo, which will be
# fetch'ed later.
if [ ! -d "${git_cache}" ]; then
+ # We can still go through the wrapper, because 'init' does not use
+ # the path pointed to by GIT_DIR, but really uses the directory
+ # passed as argument.
_git init "'${git_cache}'"
fi
pushd "${git_cache}" >/dev/null
# Ensure the repo has an origin (in case a previous run was killed).
-if ! git remote |grep -q -E '^origin$'; then
+if ! _git remote |grep -q -E '^origin$'; then
_git remote add origin "'${uri}'"
fi
OpenPOWER on IntegriCloud