I'm not sure if this is the best approach, or if changing too_many_packs can be done without causing problems for hosts of big repos. -------8<----- Subject: [PATCH] gc: correct gc.autoPackLimit documentation I want to ensure there is only one pack in my repo to take advantage of pack bitmaps. Based on my reading of the documentation, I configured gc.autoPackLimit=1 which led to "gc --auto" constantly trying to repack on every invocation. Update the documentation to reflect what is probably a long-standing off-by-one bug in builtin/gc.c::too_many_packs: - return gc_auto_pack_limit <= cnt; + return gc_auto_pack_limit < cnt; However, changing gc itself at this time may cause problems for people who are already using gc.autoPackLimit=2 and expect bitmaps to work for them. Signed-off-by: Eric Wong <e@xxxxxxxxx> --- Documentation/config.txt | 2 +- Documentation/git-gc.txt | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Documentation/config.txt b/Documentation/config.txt index 2e1b2e4..b0de3f1 100644 --- a/Documentation/config.txt +++ b/Documentation/config.txt @@ -1345,7 +1345,7 @@ gc.auto:: default value is 6700. Setting this to 0 disables it. gc.autoPackLimit:: - When there are more than this many packs that are not + When there at least this many packs that are not marked with `*.keep` file in the repository, `git gc --auto` consolidates them into one larger pack. The default value is 50. Setting this to 0 disables it. diff --git a/Documentation/git-gc.txt b/Documentation/git-gc.txt index fa15104..658612d 100644 --- a/Documentation/git-gc.txt +++ b/Documentation/git-gc.txt @@ -54,7 +54,7 @@ all loose objects are combined into a single pack using `git repack -d -l`. Setting the value of `gc.auto` to 0 disables automatic packing of loose objects. + -If the number of packs exceeds the value of `gc.autoPackLimit`, +If the number of packs matches or exceeds the value of `gc.autoPackLimit`, then existing packs (except those marked with a `.keep` file) are consolidated into a single pack by using the `-A` option of 'git repack'. Setting `gc.autoPackLimit` to 0 disables -- EW -- 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