This series adds option completion for many more commands. More importantly it introduces a generic completion function __git_complete_common(). With --git-completion-helper providing more and more information in future, this function can start to replace many other _git_xxx() in this file. Nguyễn Thái Ngọc Duy (8): git.c: move cmd_struct declaration up git.c: add hidden option --list-parseopt-builtins completion: mention the oldest version we need to support completion: factor out _git_xxx calling code completion: add --option completion for most builtin commands completion: delete option-only completion commands completion: use __gitcomp_builtin in _git_ls_tree completion: use __gitcomp_builtin in _git_cherry contrib/completion/git-completion.bash | 75 +++++++++++---- git.c | 122 +++++++++++++------------ t/t9902-completion.sh | 6 ++ 3 files changed, 127 insertions(+), 76 deletions(-) -- 2.17.0.rc0.348.gd5a49e0b6f