Junio C Hamano <gitster@xxxxxxxxx> writes: > It is a separate matter if we should add some special case to further > reduce the cases where auto-following happens. I personally do not > think any change is needed. I do not care too deeply either way, but after doing $ git init blank && cd blank and in an empty repository: $ git fetch $over_there v1.0.0 will grab the named tag and drop it in FETCH_HEAD, without adding anything to your local refs, while $ git fetch $over_there tag v1.0.0 will grab the named tag and copy it to your refs/tags/v1.0.0, and auto-follow all the tags that point at commits that are reachable. To grab and store _only_ v1.0.0 in the local refs, you need to say "do not auto-follow" with $ git fetch $over_there --no-tags tag v1.0.0 While it may be workable, the user experience could be better in a couple of different ways. * It is not fair to expect anybody to guess that "--no-tags" means "--no-auto-follow-tags" without reading documentation. $ git fetch $over_there --no-auto-follow-tags tag v1.0.0 might be an improvement, but of course, it is a bit longer to spell ;-). * The auto-follow kicks in whenever you tell "fetch" to update some refs locally. Maybe if we tweak the rule and auto-follow kick in only when you tell "fetch" to update some refs outside refs/tags locally, $ git fetch $over_there tag v1.0.0 will fetch and store _only_ the v1.0.0 tag. Of course, any behaviour change is a regression, and if done without an escape hatch, such a change robs people one useful feature: grab tag v1.0.0 and others older than that tag in one go. I won't be coding any of the above; just thinking aloud. -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html