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

Re: [PATCH 6/8] cogito: Don't ever assume object type in cg-object-id

From
PRPavel Roskin <proski@gnu.org>
Date
Sep 22, 2005, 16:55 UTC
Message-ID
<1127408155.14856.30.camel@dv>
In-Reply-To
<20050922155025.GK21019@pasky.or.cz>
On Thu, 2005-09-22 at 17:50 +0200, Petr Baudis wrote:
Show 14 quoted lines
> Dear diary, on Thu, Sep 22, 2005 at 05:37:59PM CEST, I got a letter
> where Pavel Roskin <proski@gnu.org> told me that...
> > [proski@dv cogito]$ for i in .git/refs/tags/*; do git-tar-tree `cat $i` >/dev/null || echo $i; done
> > fatal: not a reference to a tag, commit or tree object: 463d05c7c4fe7f24da29749f4c7f25893fc20b8c
> > .git/refs/tags/git-pasky-0.1
> > fatal: not a reference to a tag, commit or tree object: 2c70421be7d88fbee49986d7a5584d1f010a25de
> > .git/refs/tags/git-pasky-0.2
> > fatal: not a reference to a tag, commit or tree object: d14925c87cdb6ca6345bcb3c8e34a2d659c79451
> > .git/refs/tags/git-pasky-0.3
> 
> Huh. Huh?
> 
> xpasky@machine[1:0]~/git-devel$ git-cat-file -t $(cg-object-id git-pasky-0.1)
> commit

The error message is misleading. In fact, it's the tree referred to by the commit that was missing. Anyway, that object exists on the server, so it was my local problem.

It would be nice to have a script fetch an object by SHA1, possibly with the dependencies. git-fetch doesn't do it yet.

I copied the whole objects tree for cogito using rsync, and I see lots or error messages from git-fsck-objects. I'll wait for your changes to propagate. As it stands now, b3e9704ecdf48869f635f0aa99ddfb513f885aff (a file you said you have removed) and 11ed64c1b141c9ba397a1ca76aef2cd250976007 are still present and empty.

Are you sure rsync that copies to kernel.org uses the "delete" option? If not, we should treat kernel.org as "dumb transport" where directory listings should never be used.

Show 7 quoted lines
> > How come that cogito-0.12 - cogito-0.15 are not on the origin tree, but
> > older cogito tags are?
> 
> That's because the older tags tag commits directly, not tag objects.
> git-prune removed the tag objects because they were unreferenced by its
> perspective. Anyway, git-prune without any arguments should get it
> right.
Thanks for the explanation.  I'll be more careful with git-prune.
-- 
Regards,
Pavel Roskin
Previous: Petr Baudis
Message 8 of 8 in “cogito: Don't ever assume object type in cg-object-id”
  1. 6/8 cogito: Don't ever assume object type in cg-object-idPavel Roskin, Sep 20, 2005
  2. Petr BaudisSep 21, 2005
  3. Pavel RoskinSep 22, 2005
  4. Petr BaudisSep 22, 2005
  5. Petr BaudisSep 22, 2005
  6. Pavel RoskinSep 22, 2005
  7. Petr BaudisSep 22, 2005
  8. Pavel RoskinSep 22, 2005

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.