git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [silly] loose, pack, and another thing?
@ 2023-09-27  4:15 Junio C Hamano
  2023-09-27 13:46 ` Christian Couder
  2023-09-28 21:40 ` Jonathan Tan
  0 siblings, 2 replies; 7+ messages in thread
From: Junio C Hamano @ 2023-09-27  4:15 UTC (permalink / raw)
  To: git

Just wondering if it would help to have the third kind of object
representation in the object database, sitting next to loose objects
and packed objects, say .git/objects/verbatim/<hex-object-name> for
the contents and .git/objects/verbatim/<hex-object-name>.type that
records "blob", "tree", "commit", or "tag" (in practice, I would
expect huge "blob" objects would be the only ones that use this
mechanism).

The contents will be stored verbatim without compression and without
any object header (i.e., the usual "<type> <length>\0") and the file
could be "ln"ed (or "cow"ed if the underlying filesystem allows it)
to materialize it in the working tree if needed.

"fsck" needs to be told about how to verify them.  Create the object
header in-core and hash that, followed by the contents of that file,
and make sure the result matches the <hex-object-name> part of the
filename, or something like that.

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2023-10-04 13:11 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-09-27  4:15 [silly] loose, pack, and another thing? Junio C Hamano
2023-09-27 13:46 ` Christian Couder
2023-09-28 21:47   ` Jonathan Tan
2023-09-28 21:40 ` Jonathan Tan
2023-10-03 19:09   ` Jeff King
2023-10-03 21:26     ` Junio C Hamano
2023-10-04 13:11       ` Jeff King

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).