{"thread":{"id":"33903","subject":"is it just me, or does --all ignore --no-tags?","startedAt":"2013-05-22T21:16:14Z","lastAt":"2013-05-22T21:41:34Z","messageCount":3,"participants":["Geoff Thorpe","Junio C Hamano"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"218209","messageId":"CAKSmPgYFLZ59uAek8=GMXZE2tgGMo40s=y8X87m2GJbPVJo9WQ@mail.gmail.com","threadId":"33903","inReplyTo":null,"subject":"is it just me, or does --all ignore --no-tags?","fromName":"Geoff Thorpe","fromEmail":"qc.libre@gmail.com","sentAt":"2013-05-22T21:16:14Z","receivedAt":"2013-05-22T21:16:14Z","isPatch":false,"sender":{"key":"qc.libre@gmail.com","avatar":null},"body":"I have some peculiar reasons for doing this, but nonetheless I don't\nbelieve there's anything illegal here. I have a repo with a bunch of\nremotes set up to pull in branches and tags from different places, and\nI need all those branches and tags name-spaced. Eg. to illustrate, the\nconfig looks something like;\n\n[core]\n        repositoryformatversion = 0\n        filemode = true\n        bare = true\n[remote \"foo\"]\n        url = git://some.address/foo\n        fetch = +refs/heads/*:refs/remotes/foo/heads/*\n        fetch = +refs/tags/*:refs/remotes/foo/tags/*\n[remote \"bar\"]\n        url = git://somewhere.else/bar\n        fetch = +refs/heads/*:refs/remotes/bar/heads/*\n        fetch = +refs/tags/*:refs/remotes/bar/tags/*\n\nIf I do \"git fetch --no-tags foo && git fetch --no-tags bar\",\neverything's fine - all the branches and tags from \"foo\" sit under\nrefs/remotes/foo/{heads,tags}/, and similarly for \"bar\". OTOH, if I do\n\"git fetch --all --no-tags\", it's as though the --no-tags wasn't\nthere. Inverting the argument order doesn't seem to help.\n\nWhat this means is that in addition to putting branches and tags in\nthe locations specified in the refspecs, it also puts copies of all\nthe tags in refs/tags/. In my case, \"foo\" and \"bar\" will sometimes\ndefine the same tag name but they don't refer to the same thing,\nthat's (one of the reasons) why I need them name-spaced. The current\nsituation with \"--all\" is that refs/tags/ contains an ad-hoc union of\ntags from the different remotes, and if there are any collisions they\nseem to resolve in favour of whichever was fetched last.\n\nSo instead of doing;\n    git fetch --all --no-tags\nI'm now doing this to avoid the problem;\n    git remote | xargs -n 1 git fetch --no-tags\n\nBTW, I've hit this problem on a system I don't administer, so I can't\neasily verify this with the latest source. It's a ubuntu system and\n\"git --version\" indicates 1.7.9.5. Apologies in advance if this is\njust noise about an already-fixed-bug, but I didn't find anything via\na quick search (of the mail-list and the net more generally) so\nfigured I'd send this in.\n\nCheers,\nGeoff\n"},{"id":"218210","messageId":"CAPc5daU_q8ScUXr=C_SPy4mSJBjY8Ue9GKbcW02=os5Yk6i0QQ@mail.gmail.com","threadId":"33903","inReplyTo":"CAKSmPgYFLZ59uAek8=GMXZE2tgGMo40s=y8X87m2GJbPVJo9WQ@mail.gmail.com","subject":"Re: is it just me, or does --all ignore --no-tags?","fromName":"Junio C Hamano","fromEmail":"gitster-vger@pobox.com","sentAt":"2013-05-22T21:31:11Z","receivedAt":"2013-05-22T21:31:11Z","isPatch":false,"sender":{"key":"gitster-vger@pobox.com","avatar":null},"body":"> So instead of doing;\n>     git fetch --all --no-tags\n> I'm now doing this to avoid the problem;\n>     git remote | xargs -n 1 git fetch --no-tags\n\nI suspect that this is 8556646 (fetch --all: pass --tags/--no-tags through to\neach remote, 2012-09-05) which is in 1.7.12.2 and upwards.\n"},{"id":"218211","messageId":"CAKSmPgbHMg5Z_o3RHbvwgizH2v9Ein13hjaMvw0gCjgq3ikHpg@mail.gmail.com","threadId":"33903","inReplyTo":"CAPc5daU_q8ScUXr=C_SPy4mSJBjY8Ue9GKbcW02=os5Yk6i0QQ@mail.gmail.com","subject":"Re: is it just me, or does --all ignore --no-tags?","fromName":"Geoff Thorpe","fromEmail":"qc.libre@gmail.com","sentAt":"2013-05-22T21:41:34Z","receivedAt":"2013-05-22T21:41:34Z","isPatch":false,"sender":{"key":"qc.libre@gmail.com","avatar":null},"body":"On 22 May 2013 17:31, Junio C Hamano <gitster-vger@pobox.com> wrote:\n>> So instead of doing;\n>>     git fetch --all --no-tags\n>> I'm now doing this to avoid the problem;\n>>     git remote | xargs -n 1 git fetch --no-tags\n>\n> I suspect that this is 8556646 (fetch --all: pass --tags/--no-tags through to\n> each remote, 2012-09-05) which is in 1.7.12.2 and upwards.\n\nAwesome, that sounds like the exact problem. Much appreciated.\n"}]}