On Fri, Nov 02, 2007 at 12:49:25AM +0000, Junio C Hamano wrote: > James Bowes <jbowes@xxxxxxxxxxxxxxxxxx> writes: > > > + struct option builtin_gc_options[] = { > > + OPT_BOOLEAN(0, "prune", &prune, "prune unused objects"), > > I would write "unreferenced loose" instead of "unused" here... > > > + OPT_BOOLEAN(0, "aggressive", &aggressive, "be more thorough (increased runtime)"), > > + OPT_BOOLEAN(0, "auto", &auto_gc, "enable auto-gc mode"), > > + OPT_END() > > + }; > > + > > git_config(gc_config); > > > > if (pack_refs < 0) > > pack_refs = !is_bare_repository(); > > > > + parse_options(argc, argv, builtin_gc_options, builtin_gc_usage, 0); > > + > > + if (aggressive) { > > + append_option(argv_repack, "-f", MAX_ADD); > > + if (aggressive_window > 0) { > > + sprintf(buf, "--window=%d", aggressive_window); > > + append_option(argv_repack, buf, MAX_ADD); > > } > > } > > - if (i != argc) > > - usage(builtin_gc_usage); > > Now, what makes the command report error when the user says: > > $ git gc unwanted parameter the commands works fine, because no additionnal checks were made. To "fix" this, that should be done: argc = parse_options(argc, argv, builtin_gc_options, builtin_gc_usage, 0); if (argc) usage_with_options(......); -- ·O· Pierre Habouzit ··O madcoder@xxxxxxxxxx OOO http://www.madism.org
Attachment:
pgpUaRjVXUGm1.pgp
Description: PGP signature