diff options
author | Junio C Hamano <gitster@pobox.com> | 2007-08-15 20:55:44 -0700 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2007-08-15 21:39:07 -0700 |
commit | 312efe9b58edb428132f0bf0fdc7f3d6a41f1183 (patch) | |
tree | d95ff4c8adad3d0e084ad1eb9bc0edb4a5d2bc0c | |
parent | pack-objects: remove bogus arguments to delta_cacheable() (diff) | |
download | tgif-312efe9b58edb428132f0bf0fdc7f3d6a41f1183.tar.xz |
git-clone: allow --bare clone
This is a stop-gap to work around problem with git-init without
intrusive changes.
Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rwxr-xr-x | git-clone.sh | 7 | ||||
-rwxr-xr-x | t/t5701-clone-local.sh | 5 |
2 files changed, 10 insertions, 2 deletions
diff --git a/git-clone.sh b/git-clone.sh index 4c9b1c9710..e4a9ac4bab 100755 --- a/git-clone.sh +++ b/git-clone.sh @@ -215,7 +215,12 @@ else GIT_DIR="$D/.git" fi && export GIT_DIR && -git-init $quiet ${template+"$template"} || usage +GIT_CONFIG="$GIT_DIR/config" git-init $quiet ${template+"$template"} || usage + +if test -n "$bare" +then + GIT_CONFIG="$GIT_DIR/config" git config core.bare true +fi if test -n "$reference" then diff --git a/t/t5701-clone-local.sh b/t/t5701-clone-local.sh index 56f9d8ae73..822ac8c28e 100755 --- a/t/t5701-clone-local.sh +++ b/t/t5701-clone-local.sh @@ -8,13 +8,16 @@ D=`pwd` test_expect_success 'preparing origin repository' ' : >file && git add . && git commit -m1 && git clone --bare . a.git && - git clone --bare . x + git clone --bare . x && + test "$(GIT_CONFIG=a.git/config git config --bool core.bare)" = true && + test "$(GIT_CONFIG=x/config git config --bool core.bare)" = true ' test_expect_success 'local clone without .git suffix' ' cd "$D" && git clone -l -s a b && cd b && + test "$(GIT_CONFIG=.git/config git config --bool core.bare)" = false && git fetch ' |