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>
This commit is contained in:
Junio C Hamano 2007-08-15 20:55:44 -07:00
parent d250626cbb
commit 312efe9b58
2 changed files with 10 additions and 2 deletions

View File

@ -215,7 +215,12 @@ else
GIT_DIR="$D/.git" GIT_DIR="$D/.git"
fi && fi &&
export GIT_DIR && 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" if test -n "$reference"
then then

View File

@ -8,13 +8,16 @@ D=`pwd`
test_expect_success 'preparing origin repository' ' test_expect_success 'preparing origin repository' '
: >file && git add . && git commit -m1 && : >file && git add . && git commit -m1 &&
git clone --bare . a.git && 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' ' test_expect_success 'local clone without .git suffix' '
cd "$D" && cd "$D" &&
git clone -l -s a b && git clone -l -s a b &&
cd b && cd b &&
test "$(GIT_CONFIG=.git/config git config --bool core.bare)" = false &&
git fetch git fetch
' '