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

Re: [ANNOUNCE] git-rev-size: calculate sizes of repository

From
Johannes Schindelin <johannes.schindelin@gmx.de>
Date
Aug 20, 2006, 23:36 UTC
Message-ID
<Pine.LNX.4.63.0608210130010.28360@wbgn013.biozentrum.uni-wuerzburg.de>
In-Reply-To
<7vlkpjytnj.fsf@assigned-by-dhcp.cox.net>
Hi,
On Sun, 20 Aug 2006, Junio C Hamano wrote:
Show 19 quoted lines
> Johannes Schindelin <Johannes.Schindelin@gmx.de> writes:
> 
> > On Sun, 20 Aug 2006, Rutger Nijlunsing wrote:
> >
> >> I _knew_ it... Please go bug someone else. The only thing I did was
> >> help someone, and for that I choose my own tools since I do it for
> >> fun.
> >
> > Fair enough.
> >
> > -- 8< --
> > [PATCH] Add git-rev-size
> >
> > This tool spits out the number of trees, the number of blobs, and the total
> > bytes of the blobs for a given rev range.
> 
> I do not speak ruby (well I suspect I could read it if I wanted
> to but I didn't try) so this may or may not be something
> Johannes inherited from the original,

No, it was no rewrite. But looking at the Ruby code again, it is not really similar: the builtin uses the hash to cache the sizes even for a blob. Further, it does not unpack the objects (except for the trees, and for the revision walk if you limit by pathname). However, it inherits this:

Show 8 quoted lines
> but I think the code overcounts blobs and trees for a top-level tree 
> that happens to have the same blob (or tree) twice.  I am not sure if 
> that is intended.
> 
> Overcounting would give closer estimate for how big a tar
> archive would be, or how big an populated working tree would be,
> so it could be considered a feature.  It all depends on what
> this tools is useful for, I guess.
I dunno. No idea what the original requester wanted to do with it.

For me, it was a nice distraction from my work. And a nice occasion to finally copy^H^H^H^Himplement the independent hash map code I always wanted to refactor from object.c. And a nice demonstration how easy it actually is these days to implement a builtin.

Ciao, Dscho

Previous: Junio C Hamano
Message 13 of 13 in “[ANNOUNCE] git-rev-size: calculate sizes of repository”
  1. Rutger NijlunsingAug 20, 2006
  2. Johannes SchindelinAug 20, 2006
  3. Rutger NijlunsingAug 20, 2006
  4. Johannes SchindelinAug 20, 2006
  5. Object hash (was: Re: [ANNOUNCE] git-rev-size: calculate sizes of repository)Josef Weidendorfer, Aug 20, 2006
  6. Johannes SchindelinAug 20, 2006
  7. Rutger NijlunsingAug 20, 2006
  8. Josef WeidendorferAug 20, 2006
  9. Johannes SchindelinAug 20, 2006
  10. Rutger NijlunsingAug 20, 2006
  11. Johannes SchindelinAug 20, 2006
  12. Junio C HamanoAug 20, 2006
  13. Johannes SchindelinAug 20, 2006

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.