Re: Keeping unreachable objects in a separate pack instead of loose?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, 11 Jun 2012 14:34:14 -0400, Jeff King <peff@xxxxxxxx> wrote:
On Mon, Jun 11, 2012 at 01:27:32PM -0400, Ted Ts'o wrote:
So depending on how you would want to do the comparison, probably the fairest thing to say is that I had a total "good" packs totally about 16 megs, and the loose cruft objects was an additional 4.5 megabytes.

OK, so that 4.5 is at least a respectable percentage of the total repo
size. I suspect it may be worse for small repos in that sense, (...)

'git gc' gave a 3100% increase with my example:

    $ git clone --bare --branch linux-overhaul-20010122 \
        git://git.savannah.gnu.org/config.git
    $ cd config.git/
    $ git tag -d `git tag`; git branch -D master
    $ du -s objects
    624     objects
    $ git gc
    $ du -s objects
    19840   objects

Basically: Clone/fetch a repo, keep a small part of it, drop the
rest, and gc.  Gc explodes all the objects you no longer want.

This hits you hard if your small project tracks a big one, and
later ceases doing so.  Maybe your project is to convert a small
part of the remote into a library, or you're just tracking a few
files from the remote - e.g. from the GNU Config repo.

Not something one does every day, but it does happen.
Tweaks to expiration time etc do not help here.

Hallvard
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]