# Command classification list
# ---------------------------
# All supported commands, builtin or external, must be described in
# here. This info is used to list commands in various places. Each
# command is on one line followed by one or more attributes.
#
# The first attribute group is mandatory and indicates the command
# type. This group includes:
#
#   mainporcelain
#   ancillarymanipulators
#   ancillaryinterrogators
#   foreignscminterface
#   plumbingmanipulators
#   plumbinginterrogators
#   synchingrepositories
#   synchelpers
#   purehelpers
#
# The type names are self explanatory. But if you want to see what
# command belongs to what group to get a better picture, have a look
# at "git" man page, "GIT COMMANDS" section.
#
# Commands of type mainporcelain can also optionally have one of these
# attributes:
#
#   init
#   worktree
#   info
#   history
#   remote
#
# These commands are considered "common" and will show up in "git
# help" output in groups. Uncommon porcelain commands must not
# specify any of these attributes.
#
# "complete" attribute is used to mark that the command should be
# completable by git-completion.bash. Note that by default,
# mainporcelain commands are completable so you don't need this
# attribute.
#
# As part of the Git man page list, the man(5/7) guides are also
# specified here, which can only have "guide" attribute and nothing
# else.
#
# User-facing repository, command and file interfaces such as
# documentation for the .gitmodules, .mailmap etc. files lives in man
# sections 5 and 7. These entries can only have the "userinterfaces"
# attribute and nothing else.
#
# Git's file formats and protocols, such as documentation for the
# *.bundle format lives in man section 5. These entries can only have
# the "developerinterfaces" attribute and nothing else.
#
### command list (do not change this line)
# command name                          category [category] [category]
git-add                                 mainporcelain           worktree
git-am                                  mainporcelain
git-annotate                            ancillaryinterrogators
git-apply                               plumbingmanipulators            complete
git-archimport                          foreignscminterface
git-archive                             mainporcelain
git-backfill                            mainporcelain           history
git-bisect                              mainporcelain           info
git-blame                               ancillaryinterrogators          complete
git-branch                              mainporcelain           history
git-bugreport                           ancillaryinterrogators
git-bundle                              mainporcelain
git-cat-file                            plumbinginterrogators
git-check-attr                          purehelpers
git-check-ignore                        purehelpers
git-check-mailmap                       purehelpers
git-check-ref-format                    purehelpers
git-checkout                            mainporcelain
git-checkout-index                      plumbingmanipulators
git-cherry                              plumbinginterrogators          complete
git-cherry-pick                         mainporcelain
git-citool                              mainporcelain
git-clean                               mainporcelain
git-clone                               mainporcelain           init
git-column                              purehelpers
git-commit                              mainporcelain           history
git-commit-graph                        plumbingmanipulators
git-commit-tree                         plumbingmanipulators
git-config                              ancillarymanipulators           complete
git-count-objects                       ancillaryinterrogators
git-credential                          purehelpers
git-credential-cache                    purehelpers
git-credential-store                    purehelpers
git-cvsexportcommit                     foreignscminterface
git-cvsimport                           foreignscminterface
git-cvsserver                           foreignscminterface
git-daemon                              synchingrepositories
git-describe                            mainporcelain
git-diagnose                            ancillaryinterrogators
git-diff                                mainporcelain           info
git-diff-files                          plumbinginterrogators
git-diff-index                          plumbinginterrogators
git-diff-pairs                          plumbinginterrogators
git-diff-tree                           plumbinginterrogators
git-difftool                            ancillaryinterrogators          complete
git-fast-export                         ancillarymanipulators
git-fast-import                         ancillarymanipulators
git-fetch                               mainporcelain           remote
git-fetch-pack                          synchingrepositories
git-filter-branch                       ancillarymanipulators
git-fmt-merge-msg                       purehelpers
git-for-each-ref                        plumbinginterrogators
git-for-each-repo                       plumbinginterrogators
git-format-patch                        mainporcelain
git-fsck                                ancillaryinterrogators          complete
git-gc                                  mainporcelain
git-get-tar-commit-id                   plumbinginterrogators
git-grep                                mainporcelain           info
git-gui                                 mainporcelain
git-hash-object                         plumbingmanipulators
git-help                                ancillaryinterrogators          complete
git-hook                                purehelpers
git-http-backend                        synchingrepositories
git-http-fetch                          synchelpers
git-http-push                           synchelpers
git-imap-send                           foreignscminterface
git-index-pack                          plumbingmanipulators
git-init                                mainporcelain           init
git-instaweb                            ancillaryinterrogators          complete
git-interpret-trailers                  purehelpers
git-log                                 mainporcelain           info
git-ls-files                            plumbinginterrogators
git-ls-remote                           plumbinginterrogators
git-ls-tree                             plumbinginterrogators
git-mailinfo                            purehelpers
git-mailsplit                           purehelpers
git-maintenance                         mainporcelain
git-merge                               mainporcelain           history
git-merge-base                          plumbinginterrogators
git-merge-file                          plumbingmanipulators
git-merge-index                         plumbingmanipulators
git-merge-one-file                      purehelpers
git-merge-tree                          ancillaryinterrogators
git-mergetool                           ancillarymanipulators           complete
git-mktag                               plumbingmanipulators
git-mktree                              plumbingmanipulators
git-multi-pack-index                    plumbingmanipulators
git-mv                                  mainporcelain           worktree
git-name-rev                            plumbinginterrogators
git-notes                               mainporcelain
git-p4                                  foreignscminterface
git-pack-objects                        plumbingmanipulators
git-pack-redundant                      plumbinginterrogators
git-pack-refs                           ancillarymanipulators
git-patch-id                            purehelpers
git-prune                               ancillarymanipulators   complete
git-prune-packed                        plumbingmanipulators
git-pull                                mainporcelain           remote
git-push                                mainporcelain           remote
git-quiltimport                         foreignscminterface
git-range-diff                          mainporcelain
git-read-tree                           plumbingmanipulators
git-rebase                              mainporcelain           history
git-receive-pack                        synchelpers
git-reflog                              ancillarymanipulators           complete
git-refs                                ancillarymanipulators           complete
git-remote                              ancillarymanipulators           complete
git-repack                              ancillarymanipulators           complete
git-replace                             ancillarymanipulators           complete
git-replay                              plumbingmanipulators
git-repo                                plumbinginterrogators
git-request-pull                        foreignscminterface             complete
git-rerere                              ancillaryinterrogators
git-reset                               mainporcelain           history
git-restore                             mainporcelain           worktree
git-rev-list                            plumbinginterrogators
git-rev-parse                           plumbinginterrogators
git-revert                              mainporcelain
git-rm                                  mainporcelain           worktree
git-send-email                          foreignscminterface             complete
git-send-pack                           synchingrepositories
git-sh-i18n                             purehelpers
git-sh-setup                            purehelpers
git-shell                               synchelpers
git-shortlog                            mainporcelain
git-show                                mainporcelain           info
git-show-branch                         ancillaryinterrogators          complete
git-show-index                          plumbinginterrogators
git-show-ref                            plumbinginterrogators
git-sparse-checkout                     mainporcelain
git-stage                                                               complete
git-stash                               mainporcelain
git-status                              mainporcelain           info
git-stripspace                          purehelpers
git-submodule                           mainporcelain
git-svn                                 foreignscminterface
git-switch                              mainporcelain           history
git-symbolic-ref                        plumbingmanipulators
git-tag                                 mainporcelain           history
git-unpack-file                         plumbinginterrogators
git-unpack-objects                      plumbingmanipulators
git-update-index                        plumbingmanipulators
git-update-ref                          plumbingmanipulators
git-update-server-info                  synchingrepositories
git-upload-archive                      synchelpers
git-upload-pack                         synchelpers
git-var                                 plumbinginterrogators
git-verify-commit                       ancillaryinterrogators
git-verify-pack                         plumbinginterrogators
git-verify-tag                          ancillaryinterrogators
git-version                             ancillaryinterrogators
git-whatchanged                         ancillaryinterrogators          complete
git-worktree                            mainporcelain
git-write-tree                          plumbingmanipulators
gitattributes                           userinterfaces
gitcli                                  userinterfaces
gitcore-tutorial                        guide
gitcredentials                          guide
gitcvs-migration                        guide
gitdiffcore                             guide
giteveryday                             guide
gitfaq                                  guide
gitformat-bundle                        developerinterfaces
gitformat-chunk                         developerinterfaces
gitformat-commit-graph                  developerinterfaces
gitformat-index                         developerinterfaces
gitformat-pack                          developerinterfaces
gitformat-signature                     developerinterfaces
gitglossary                             guide
githooks                                userinterfaces
gitignore                               userinterfaces
gitk                                    mainporcelain
gitmailmap                              userinterfaces
gitmodules                              userinterfaces
gitnamespaces                           guide
gitprotocol-capabilities                developerinterfaces
gitprotocol-common                      developerinterfaces
gitprotocol-http                        developerinterfaces
gitprotocol-pack                        developerinterfaces
gitprotocol-v2                          developerinterfaces
gitremote-helpers                       guide
gitrepository-layout                    userinterfaces
gitrevisions                            userinterfaces
gitsubmodules                           guide
gittutorial                             guide
gittutorial-2                           guide
gitweb                                  ancillaryinterrogators
gitworkflows                            guide
scalar                                  mainporcelain
