git-commit-vandalism/builtin
Jeff King 3eafdc961f remote: allow "-t" with fetch mirrors
Commit 13fc2c1 (remote: disallow some nonsensical option
combinations, 2011-03-30) made it impossible to use "remote
add -t foo --mirror". The argument was that specifying
specific branches is useless because:

  1. Push mirrors do not want a refspec at all.

  2. The point of fetch mirroring is to use a broad refspec
     like "refs/*", but using "-t" overrides that.

Point (1) is valid; "-t" with push mirrors is useless. But
point (2) ignored another side effect of using --mirror: it
fetches the refs directly into the refs/ namespace as they
are found upstream, instead of placing them in a
separate-remote layout.

So 13fc2c1 was overly constrictive, and disallowed
reasonable specific-branch mirroring, like:

  git remote add -t heads/foo -t heads/bar --mirror=fetch

which makes the local "foo" and "bar" branches direct
mirrors of the remote, but does not fetch anything else.

This patch restores the original behavior, but only for
fetch mirrors.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2011-05-26 11:38:18 -07:00
..
add.c standardize brace placement in struct definitions 2011-03-16 12:49:02 -07:00
annotate.c
apply.c Merge branch 'fc/apply-p2-get-header-name' into maint 2010-12-09 10:36:36 -08:00
archive.c
bisect--helper.c
blame.c standardize brace placement in struct definitions 2011-03-16 12:49:02 -07:00
branch.c branch: split off function that writes tracking info and commit subject 2011-03-16 12:52:15 -07:00
bundle.c
cat-file.c
check-attr.c
check-ref-format.c
checkout-index.c Merge branch 'jn/git-cmd-h-bypass-setup' 2010-12-12 21:49:50 -08:00
checkout.c correct type of EMPTY_TREE_SHA1_BIN 2011-02-14 10:48:06 -08:00
clean.c Merge branch 'rs/opt-help-text' 2010-11-24 15:55:19 -08:00
clone.c Merge branch 'jk/fail-null-clone' into maint 2011-03-16 16:47:26 -07:00
commit-tree.c
commit.c Merge branch 'jn/maint-commit-missing-template' into maint 2011-03-16 16:47:26 -07:00
config.c Make <identifier> lowercase as per CodingGuidelines 2011-02-15 11:53:10 -08:00
count-objects.c
describe.c for_each_hash: allow passing a 'void *data' pointer to callback 2011-02-18 22:25:51 -08:00
diff-files.c
diff-index.c
diff-tree.c
diff.c diff: support --cached on unborn branches 2011-02-07 15:04:30 -08:00
fast-export.c Make <identifier> lowercase as per CodingGuidelines 2011-02-15 11:53:10 -08:00
fetch-pack.c commit: Add commit_list prefix in two function names. 2010-11-29 14:01:52 -08:00
fetch.c Make <identifier> lowercase as per CodingGuidelines 2011-02-15 11:53:10 -08:00
fmt-merge-msg.c
for-each-ref.c
fsck.c fsck: do not give up too early in fsck_dir() 2011-01-27 12:58:15 -08:00
gc.c Merge branch 'jn/git-cmd-h-bypass-setup' 2010-12-12 21:49:50 -08:00
grep.c grep: Add the option '--line-number' 2011-03-28 14:02:12 -07:00
hash-object.c
help.c
index-pack.c standardize brace placement in struct definitions 2011-03-16 12:49:02 -07:00
init-db.c init: remove unnecessary check 2011-03-03 15:45:10 -08:00
log.c cherry: split off function to print output lines 2011-03-16 12:54:44 -07:00
ls-files.c Merge branch 'jn/git-cmd-h-bypass-setup' 2010-12-12 21:49:50 -08:00
ls-remote.c
ls-tree.c
mailinfo.c
mailsplit.c
merge-base.c
merge-file.c Merge branch 'rs/opt-help-text' 2010-11-24 15:55:19 -08:00
merge-index.c
merge-ours.c
merge-recursive.c
merge-tree.c
merge.c Merge branch 'mg/placeholders-are-lowercase' into maint 2011-03-16 16:47:25 -07:00
mktag.c
mktree.c
mv.c
name-rev.c
notes.c Make <identifier> lowercase as per CodingGuidelines 2011-02-15 11:53:10 -08:00
pack-objects.c thread-utils.h: simplify the inclusion 2010-12-10 12:58:06 -08:00
pack-redundant.c
pack-refs.c
patch-id.c git-patch-id: do not trip over "no newline" markers 2011-02-17 11:56:50 -08:00
prune-packed.c
prune.c
push.c push.default: Rename 'tracking' to 'upstream' 2011-02-16 10:21:52 -08:00
read-tree.c Make <identifier> lowercase as per CodingGuidelines 2011-02-15 11:53:10 -08:00
receive-pack.c
reflog.c
remote-ext.c remote-ext: do not segfault for blank lines 2011-01-18 10:18:25 -08:00
remote-fd.c remote-fd/ext: finishing touches after code review 2010-11-19 11:04:20 -08:00
remote.c remote: allow "-t" with fetch mirrors 2011-05-26 11:38:18 -07:00
replace.c
rerere.c
reset.c
rev-list.c Merge branch 'jk/maint-rev-list-nul' into maint 2010-11-24 12:46:32 -08:00
rev-parse.c
revert.c Merge branch 'jn/cherry-pick-refresh-index' into maint 2010-12-09 10:36:51 -08:00
rm.c builtin/rm.c: Use ALLOC_GROW instead of alloc_nr and xrealloc. 2010-12-19 10:44:06 -08:00
send-pack.c Merge branch 'jk/push-progress' 2010-11-17 15:01:00 -08:00
shortlog.c parse-options: Don't call parse_options_check() so much 2010-12-06 16:51:36 -08:00
show-branch.c commit: Add commit_list prefix in two function names. 2010-11-29 14:01:52 -08:00
show-ref.c
stripspace.c
symbolic-ref.c
tag.c Make <identifier> lowercase as per CodingGuidelines 2011-02-15 11:53:10 -08:00
tar-tree.c
unpack-file.c
unpack-objects.c
update-index.c Merge branch 'jn/parse-options-extra' 2010-12-12 21:49:53 -08:00
update-ref.c
update-server-info.c
upload-archive.c
var.c
verify-pack.c
verify-tag.c Merge branch 'mg/maint-tag-rfc1991' 2010-12-08 11:24:13 -08:00
write-tree.c