t5801 (remote-helpers): cleanup refspec stuff
The code is much simpler this way, specially thanks to: git fast-export --refspec Signed-off-by: Felipe Contreras <felipe.contreras@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
e198b3a740
commit
6e17fb3409
@ -11,13 +11,10 @@ fi
|
|||||||
url=$2
|
url=$2
|
||||||
|
|
||||||
dir="$GIT_DIR/testgit/$alias"
|
dir="$GIT_DIR/testgit/$alias"
|
||||||
prefix="refs/testgit/$alias"
|
|
||||||
|
|
||||||
default_refspec="refs/heads/*:${prefix}/heads/*"
|
refspec="refs/heads/*:refs/testgit/$alias/heads/*"
|
||||||
|
|
||||||
refspec="${GIT_REMOTE_TESTGIT_REFSPEC-$default_refspec}"
|
test -n "$GIT_REMOTE_TESTGIT_NOREFSPEC" && refspec=""
|
||||||
|
|
||||||
test -z "$refspec" && prefix="refs"
|
|
||||||
|
|
||||||
GIT_DIR="$url/.git"
|
GIT_DIR="$url/.git"
|
||||||
export GIT_DIR
|
export GIT_DIR
|
||||||
@ -81,10 +78,10 @@ do
|
|||||||
|
|
||||||
echo "feature done"
|
echo "feature done"
|
||||||
git fast-export \
|
git fast-export \
|
||||||
|
${refspec:+"--refspec=$refspec"} \
|
||||||
${testgitmarks:+"--import-marks=$testgitmarks"} \
|
${testgitmarks:+"--import-marks=$testgitmarks"} \
|
||||||
${testgitmarks:+"--export-marks=$testgitmarks"} \
|
${testgitmarks:+"--export-marks=$testgitmarks"} \
|
||||||
$refs |
|
$refs
|
||||||
sed -e "s#refs/heads/#${prefix}/heads/#g"
|
|
||||||
echo "done"
|
echo "done"
|
||||||
;;
|
;;
|
||||||
export)
|
export)
|
||||||
|
@ -124,7 +124,7 @@ test_expect_success 'forced push' '
|
|||||||
'
|
'
|
||||||
|
|
||||||
test_expect_success 'cloning without refspec' '
|
test_expect_success 'cloning without refspec' '
|
||||||
GIT_REMOTE_TESTGIT_REFSPEC="" \
|
GIT_REMOTE_TESTGIT_NOREFSPEC=1 \
|
||||||
git clone "testgit::${PWD}/server" local2 2>error &&
|
git clone "testgit::${PWD}/server" local2 2>error &&
|
||||||
test_i18ngrep "this remote helper should implement refspec capability" error &&
|
test_i18ngrep "this remote helper should implement refspec capability" error &&
|
||||||
compare_refs local2 HEAD server HEAD
|
compare_refs local2 HEAD server HEAD
|
||||||
@ -133,7 +133,7 @@ test_expect_success 'cloning without refspec' '
|
|||||||
test_expect_success 'pulling without refspecs' '
|
test_expect_success 'pulling without refspecs' '
|
||||||
(cd local2 &&
|
(cd local2 &&
|
||||||
git reset --hard &&
|
git reset --hard &&
|
||||||
GIT_REMOTE_TESTGIT_REFSPEC="" git pull 2>../error) &&
|
GIT_REMOTE_TESTGIT_NOREFSPEC=1 git pull 2>../error) &&
|
||||||
test_i18ngrep "this remote helper should implement refspec capability" error &&
|
test_i18ngrep "this remote helper should implement refspec capability" error &&
|
||||||
compare_refs local2 HEAD server HEAD
|
compare_refs local2 HEAD server HEAD
|
||||||
'
|
'
|
||||||
@ -143,8 +143,8 @@ test_expect_success 'pushing without refspecs' '
|
|||||||
(cd local2 &&
|
(cd local2 &&
|
||||||
echo content >>file &&
|
echo content >>file &&
|
||||||
git commit -a -m ten &&
|
git commit -a -m ten &&
|
||||||
GIT_REMOTE_TESTGIT_REFSPEC="" &&
|
GIT_REMOTE_TESTGIT_NOREFSPEC=1 &&
|
||||||
export GIT_REMOTE_TESTGIT_REFSPEC &&
|
export GIT_REMOTE_TESTGIT_NOREFSPEC &&
|
||||||
test_must_fail git push 2>../error) &&
|
test_must_fail git push 2>../error) &&
|
||||||
test_i18ngrep "remote-helper doesn.t support push; refspec needed" error
|
test_i18ngrep "remote-helper doesn.t support push; refspec needed" error
|
||||||
'
|
'
|
||||||
|
Loading…
Reference in New Issue
Block a user