complete -c git -a add -d 'Add file contents to the index' complete -c git -a apply -d 'Apply a patch on a git index file and a working tree' complete -c git -a archive -d 'Create an archive of files from a named tree' complete -c git -a bisect -d 'Find the change that introduced a bug by binary search' complete -c git -a branch -d 'List, create, or delete branches' complete -c git -a checkout -d 'Checkout and switch to a branch' complete -c git -a cherry-pick -d 'Apply the change introduced by an existing commit' complete -c git -a clone -d 'Clone a repository into a new directory' complete -c git -a commit -d 'Record changes to the repository' complete -c git -a diff -d 'Show changes between commits, commit and working tree, etc' complete -c git -a fetch -d 'Download objects and refs from another repository' complete -c git -a grep -d 'Print lines matching a pattern' complete -c git -a init -d 'Create an empty git repository or reinitialize an existing one' complete -c git -a log -d 'Show commit logs' complete -c git -a merge -d 'Join two or more development histories together' complete -c git -a mv -d 'Move or rename a file, a directory, or a symlink' complete -c git -a prune -d 'Prune all unreachable objects from the object database' complete -c git -a pull -d 'Fetch from and merge with another repository or a local branch' complete -c git -a push -d 'Update remote refs along with associated objects' complete -c git -a rebase -d 'Forward-port local commits to the updated upstream head' complete -c git -a reset -d 'Reset current HEAD to the specified state' complete -c git -a revert -d 'Revert an existing commit' complete -c git -a rm -d 'Remove files from the working tree and from the index' complete -c git -a show -d 'Show various types of objects' complete -c git -a show-branch -d 'Show branches and their commits' complete -c git -a status -d 'Show the working tree status' complete -c git -a tag -d 'Create, list, delete or verify a tag object signed with GPG'