Browse Source

Merge branch 'sk/send-pack-all-fix' into maint

"git send-pack --all <there>" was broken when its command line
option parsing was written in the 2.6 timeframe.

* sk/send-pack-all-fix:
  git-send-pack: fix --all option when used with directory
maint
Junio C Hamano 9 years ago
parent
commit
18c554b272
  1. 2
      builtin/send-pack.c
  2. 12
      t/t5400-send-pack.sh

2
builtin/send-pack.c

@ -225,7 +225,7 @@ int cmd_send_pack(int argc, const char **argv, const char *prefix) @@ -225,7 +225,7 @@ int cmd_send_pack(int argc, const char **argv, const char *prefix)
* --all and --mirror are incompatible; neither makes sense
* with any refspecs.
*/
if ((refspecs && (send_all || args.send_mirror)) ||
if ((nr_refspecs > 0 && (send_all || args.send_mirror)) ||
(send_all && args.send_mirror))
usage_with_options(send_pack_usage, options);


12
t/t5400-send-pack.sh

@ -128,6 +128,18 @@ test_expect_success 'denyNonFastforwards trumps --force' ' @@ -128,6 +128,18 @@ test_expect_success 'denyNonFastforwards trumps --force' '
test "$victim_orig" = "$victim_head"
'

test_expect_success 'send-pack --all sends all branches' '
# make sure we have at least 2 branches with different
# values, just to be thorough
git branch other-branch HEAD^ &&

git init --bare all.git &&
git send-pack --all all.git &&
git for-each-ref refs/heads >expect &&
git -C all.git for-each-ref refs/heads >actual &&
test_cmp expect actual
'

test_expect_success 'push --all excludes remote-tracking hierarchy' '
mkdir parent &&
(

Loading…
Cancel
Save