]> git.ipfire.org Git - thirdparty/git.git/commitdiff
builtin/repack.c: reword comment around pack-objects flags
authorJunio C Hamano <gitster@pobox.com>
Fri, 5 Mar 2021 15:22:02 +0000 (10:22 -0500)
committerJunio C Hamano <gitster@pobox.com>
Fri, 5 Mar 2021 19:33:52 +0000 (11:33 -0800)
The comment in this block is meant to indicate that passing '--all',
'--reflog', and so on aren't necessary when repacking with the
'--geometric' option.

But, it has two problems: first, it is factually incorrect ('--all' is
*not* incompatible with '--stdin-packs' as the comment suggests);
second, it is quite focused on the geometric case for a block that is
guarding against it.

Reword this comment to address both issues.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
Signed-off-by: Taylor Blau <me@ttaylorr.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
builtin/repack.c

index 677c6b75c1ce219ae2300eb3ffb2b6d3b91b3ccc..6ce2556c9e1651dbae9d1615dc3a995fb1ff03af 100644 (file)
@@ -545,12 +545,14 @@ int cmd_repack(int argc, const char **argv, const char *prefix)
        strvec_push(&cmd.args, "--non-empty");
        if (!geometry) {
                /*
-                * 'git pack-objects' will up all objects loose or packed
-                * (either rolling them up or leaving them alone), so don't pass
-                * these options.
+                * We need to grab all reachable objects, including those that
+                * are reachable from reflogs and the index.
                 *
-                * The implementation of 'git pack-objects --stdin-packs'
-                * makes them redundant (and the two are incompatible).
+                * When repacking into a geometric progression of packs,
+                * however, we ask 'git pack-objects --stdin-packs', and it is
+                * not about packing objects based on reachability but about
+                * repacking all the objects in specified packs and loose ones
+                * (indeed, --stdin-packs is incompatible with these options).
                 */
                strvec_push(&cmd.args, "--all");
                strvec_push(&cmd.args, "--reflog");