Merge branch 'sg/parse-options-subcommand'
commitd528044c83cc1f5fb925fbb043110f5fb0382f99
authorJunio C Hamano <gitster@pobox.com>
Thu, 1 Sep 2022 20:40:18 +0000 (1 13:40 -0700)
committerJunio C Hamano <gitster@pobox.com>
Thu, 1 Sep 2022 20:40:18 +0000 (1 13:40 -0700)
treeff7fb9a25effe7b890dd215050061343be200fb4
parent68ef0425d99cafb08f4c33eaa558505068fe2143
parent8f9d80f6c06369b563c76ec46c462e740a1a2cf0
Merge branch 'sg/parse-options-subcommand'

Introduce the "subcommand" mode to parse-options API and update the
command line parser of Git commands with subcommands.

* sg/parse-options-subcommand: (23 commits)
  remote: run "remote rm" argv through parse_options()
  maintenance: add parse-options boilerplate for subcommands
  pass subcommand "prefix" arguments to parse_options()
  builtin/worktree.c: let parse-options parse subcommands
  builtin/stash.c: let parse-options parse subcommands
  builtin/sparse-checkout.c: let parse-options parse subcommands
  builtin/remote.c: let parse-options parse subcommands
  builtin/reflog.c: let parse-options parse subcommands
  builtin/notes.c: let parse-options parse subcommands
  builtin/multi-pack-index.c: let parse-options parse subcommands
  builtin/hook.c: let parse-options parse subcommands
  builtin/gc.c: let parse-options parse 'git maintenance's subcommands
  builtin/commit-graph.c: let parse-options parse subcommands
  builtin/bundle.c: let parse-options parse subcommands
  parse-options: add support for parsing subcommands
  parse-options: drop leading space from '--git-completion-helper' output
  parse-options: clarify the limitations of PARSE_OPT_NODASH
  parse-options: PARSE_OPT_KEEP_UNKNOWN only applies to --options
  api-parse-options.txt: fix description of OPT_CMDMODE
  t0040-parse-options: test parse_options() with various 'parse_opt_flags'
  ...
builtin/gc.c
builtin/log.c
builtin/reflog.c
builtin/remote.c
git.c
t/helper/test-tool.c
t/helper/test-tool.h
t/t5318-commit-graph.sh
t/t7900-maintenance.sh