git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH 07/11] git-fetch: Limit automated tag following to only fetched objects

From
Junio C Hamano <gitster@pobox.com>
Date
Nov 9, 2007, 22:26 UTC
Message-ID
<7v7ikrrr77.fsf@gitster.siamese.dyndns.org>
In-Reply-To
<20071109110631.GG19368@spearce.org>
"Shawn O. Pearce" <spearce@spearce.org> writes:
> We now redefine the rule to be: "tags are fetched if they refer
> to an object that was just transferred; that is an object that is
> new to your repository".  This rule is quite simple to understand,
> you only get a tag if you just got the object it refers to.
In other words, if I do this:
	git fetch git-gui master

(which should not follow any tags) when your master is a bit ahead of a new tag in git-gui I do not have, and then immediately afterwards if I do:

	git fetch git-gui
I will not get the new tag followed?
If that is what the patch does, it feels like a regression.

The intended behaviour was "when tag following is enabled, they are followed if they refer to an object that is reachable from your existing refs".

But this is quite expensive to compute. If a tag points at a blob that is contained inside a commit that is reachable from a ref, we would need to grep "git rev-list --objects -all" output to find it out. I do not offhand recall what the scripted version did, but I would not be surprised if as an approximation we did the auto-following by "does the pointee exist" check.

What "random behaviour" are you trying to fix? 
Previous: Andreas EricssonNext: Shawn O. Pearce
Message 5 of 6 in “git-fetch: Limit automated tag following to only fetched objects”
  1. 07/11 git-fetch: Limit automated tag following to only fetched objectsShawn O. Pearce, Nov 9, 2007
  2. Johannes SixtNov 9, 2007
  3. CJ van den BergNov 9, 2007
  4. Andreas EricssonNov 10, 2007
  5. Junio C HamanoNov 9, 2007
  6. Shawn O. PearceNov 11, 2007

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.