# Cleaning up files reported by size-garbage

3 messages from 2020-08-27 to 2020-08-27. Participants: Konstantin Ryabitsev, Jeff King.
Thread: https://gitlist.dev/t/54142

## Konstantin Ryabitsev, 2020-08-27 15:55

Subject: Cleaning up files reported by size-garbage
Message-ID: <20200827155529.3vtmrec7nn3mqgpl@chatter.i7.local>
URL: https://gitlist.dev/e/20200827155529.3vtmrec7nn3mqgpl%40chatter.i7.local

```
Hello:

Running git count-objects -v reports garbage files:

$ git count-objects -v
warning: garbage found: ./objects/pack/tmp_pack_XSv8MO
warning: garbage found: ./objects/pack/tmp_pack_2uOuMg
warning: garbage found: ./objects/pack/tmp_pack_KzP1ja
count: 19
size: 84
in-pack: 172456
packs: 6
size-pack: 63907
prune-packable: 0
garbage: 3
size-garbage: 1911

Is there a way to tell git to clean those up? I'm not finding anything 
and would rather avoid having to parse stderr in these cases.

Best,
-K

```

## Jeff King, 2020-08-27 17:19

Subject: Re: Cleaning up files reported by size-garbage
Message-ID: <20200827171954.GA3970312@coredump.intra.peff.net>
URL: https://gitlist.dev/e/20200827171954.GA3970312%40coredump.intra.peff.net
In-Reply-To: <20200827155529.3vtmrec7nn3mqgpl@chatter.i7.local>

```
On Thu, Aug 27, 2020 at 11:55:29AM -0400, Konstantin Ryabitsev wrote:

> Running git count-objects -v reports garbage files:
> 
> $ git count-objects -v
> warning: garbage found: ./objects/pack/tmp_pack_XSv8MO
> warning: garbage found: ./objects/pack/tmp_pack_2uOuMg
> warning: garbage found: ./objects/pack/tmp_pack_KzP1ja
> count: 19
> size: 84
> in-pack: 172456
> packs: 6
> size-pack: 63907
> prune-packable: 0
> garbage: 3
> size-garbage: 1911
> 
> Is there a way to tell git to clean those up? I'm not finding anything 
> and would rather avoid having to parse stderr in these cases.

I think that git-gc will clean them up (via git-prune). It will also
check that their mtimes are older than the expiration time, which avoids
accidentally cleaning up the pack for an incoming fetch or push.

The default gc expiration time is 2 weeks, though, so you might want
something like:

  git gc --prune=5.minutes.ago

if you're trying to get rid of them immediately. Likewise use git-prune
directly if you don't want to incur the cost of a full gc/repack.

-Peff

```

## Konstantin Ryabitsev, 2020-08-27 17:36

Subject: Re: Cleaning up files reported by size-garbage
Message-ID: <20200827173645.digsnbu3z4donzno@chatter.i7.local>
URL: https://gitlist.dev/e/20200827173645.digsnbu3z4donzno%40chatter.i7.local
In-Reply-To: <20200827171954.GA3970312@coredump.intra.peff.net>

```
On Thu, Aug 27, 2020 at 01:19:54PM -0400, Jeff King wrote:
> I think that git-gc will clean them up (via git-prune). It will also
> check that their mtimes are older than the expiration time, which avoids
> accidentally cleaning up the pack for an incoming fetch or push.
> 
> The default gc expiration time is 2 weeks, though, so you might want
> something like:
> 
>   git gc --prune=5.minutes.ago
> 
> if you're trying to get rid of them immediately. Likewise use git-prune
> directly if you don't want to incur the cost of a full gc/repack.

Oh, you're totally right. For some reason I was convinced that git-prune 
didn't touch them, but I stand corrected.

Thanks for the pointer!

-K

```
