git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Why is the name of a blob SHA1("$type $size\0$data") and not SHA1("$data")?
@ 2009-04-30 19:55 David Srbecky
  2009-04-30 20:02 ` Shawn O. Pearce
  2009-04-30 22:57 ` Björn Steinbrink
  0 siblings, 2 replies; 3+ messages in thread
From: David Srbecky @ 2009-04-30 19:55 UTC (permalink / raw)
  To: git

Hi,


First of all, congratulations on makeing such a great version control 
system.  I love the storage model - in comparison with other systems, it 
is just birantly simple and ingenious.


I started digging into the details and there is one thing that is really 
bugging me - why is the name of a blob SHA1("$type $size\0$data") and 
not SHA1("$data")?  I mean, wouldn't it be beautiful if the name of the 
blob would really just be the SHA1 of the uncompressed file content? :-)


Furthermore, is the header really necessary?  Wouldn't it be 
eqvivalently effective to put the blobs into own subdirectory? For 
example:  .git\objects\blob\22\22a3d28c5b2fca0eae83be1a2ed619e357f6a1e6
So the blob would contatin just be the compressed content and nothing 
else - beautiful :-)


I would really appriciate some comments on the design decisions so that 
I can sleep well at night :-)


David

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

end of thread, other threads:[~2009-04-30 22:57 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-04-30 19:55 Why is the name of a blob SHA1("$type $size\0$data") and not SHA1("$data")? David Srbecky
2009-04-30 20:02 ` Shawn O. Pearce
2009-04-30 22:57 ` Björn Steinbrink

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).