Code

Update bash completion for git-config options
authorShawn O. Pearce <spearce@spearce.org>
Thu, 24 May 2007 06:07:45 +0000 (02:07 -0400)
committerShawn O. Pearce <spearce@spearce.org>
Thu, 24 May 2007 06:07:45 +0000 (02:07 -0400)
A few new configuration options grew out of the woodwork during the
1.5.2 series.  Most of these are pretty easy to support a completion
of, so we do so.

I wanted to also add completion support for the <driver> part of
merge.<driver>.name but to do that we have to look at all of the
.gitattributes files and guess what the unique set of <driver>
strings would be.  Since this appears to be non-trivial I'm punting
on it at this time.

Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
contrib/completion/git-completion.bash

index 0b8cb5f0e6a3ab2c66b213a9df282602ef866681..9e72f0f7b1668ba144397b6a6a2094d4294f5724 100755 (executable)
@@ -764,9 +764,11 @@ _git_config ()
        case "$cur" in
        --*)
                __gitcomp "
-                       --global --list --replace-all
+                       --global --system
+                       --list --replace-all
                        --get --get-all --get-regexp
                        --add --unset --unset-all
+                       --remove-section --rename-section
                        "
                return
                ;;
@@ -785,7 +787,10 @@ _git_config ()
        remote.*.*)
                local pfx="${cur%.*}."
                cur="${cur##*.}"
-               __gitcomp "url fetch push" "$pfx" "$cur"
+               __gitcomp "
+                       url fetch push skipDefaultUpdate
+                       receivepack uploadpack tagopt
+                       " "$pfx" "$cur"
                return
                ;;
        remote.*)
@@ -835,6 +840,9 @@ _git_config ()
                format.headers
                gitcvs.enabled
                gitcvs.logfile
+               gitcvs.allbinary
+               gitcvs.dbname gitcvs.dbdriver gitcvs.dbuser gitcvs.dvpass
+               gc.packrefs
                gc.reflogexpire
                gc.reflogexpireunreachable
                gc.rerereresolved
@@ -851,9 +859,11 @@ _git_config ()
                i18n.commitEncoding
                i18n.logOutputEncoding
                log.showroot
+               merge.tool
                merge.summary
                merge.verbosity
                pack.window
+               pack.depth
                pull.octopus
                pull.twohead
                repack.useDeltaBaseOffset