On Mon, Oct 19, 2015 at 11:09:19PM +0000, brian m. carlson wrote: > On Mon, Oct 19, 2015 at 08:59:15PM +0100, Andreas Amann wrote: > > Thank you for your answer. However, this reasoning only applies to loose > > objects and not packfiles. > > > > My understanding is that "git prune" will not prune any pack files > > (except those starting with tmp_). Only "git repack" should do that. > > Repack seems to be however mtime agnostic and therefore it does not seem > > to be necessary to freshen packfiles. > > > > It therefore seems that git freshens packfiles unnecessarily, which can > > lead to expensive and unnecessary backup operations. > > > > Given this, would a trivial patch to remove the freshening of packfiles > > be acceptable? > > I'm not familiar enough with the code to say for certain, but it looks > like you're right. Peff, Junio, do you think this is safe, or is there > something we're missing? No, it's not safe. When doing a full repack, we pack only reachable objects. Unreachable ones are either loosened and given the mtime of the packfile (from which they can then be pruned), or discarded if the pack mtime is already old (as an optimization to avoid writing and then immediately pruning). See builtin/pack-objects.c:loosen_unused_packed_objects. -Peff -- 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