From: Cornelius Weig <cornelius.w...@tngtech.com>

This is the re-roll of patch series 
<20170122225724.19360-1-cornelius.w...@tngtech.com>.

This patch series adds all long-options that are mentioned in the synopsis of
the man-page for the respective git-command. There are only a few exceptions,
as discussed in the above thread. For example, no unsafe options should be
completed.
Furthermore, the patches add subommand option completion for git-submodule and
git-remote.

Changes wrt first submission:

 - improve completion for git-remote set-head & set-branches
 - remove completion of unsafe options
 - improve commit messages
 - added sign-off :)
 - rebase to current master

Cornelius Weig (7):
  completion: teach submodule subcommands to complete options
  completion: add subcommand completion for rerere
  completion: improve bash completion for git-add
  completion: teach ls-remote to complete options
  completion: teach replace to complete options
  completion: teach remote subcommands to complete options
  completion: recognize more long-options

 contrib/completion/git-completion.bash | 139 ++++++++++++++++++++++++++++-----
 1 file changed, 118 insertions(+), 21 deletions(-)


Interdiff since first iteration:
diff --git a/contrib/completion/git-completion.bash 
b/contrib/completion/git-completion.bash
index 87d3d2c..3545f6a 100644
--- a/contrib/completion/git-completion.bash
+++ b/contrib/completion/git-completion.bash
@@ -936,7 +936,7 @@ _git_apply ()
                        --apply --no-add --exclude=
                        --ignore-whitespace --ignore-space-change
                        --whitespace= --inaccurate-eof --verbose
-                       --recount --directory= --unsafe-paths
+                       --recount --directory=
                        "
                return
        esac
@@ -1459,7 +1459,7 @@ _git_ls_remote ()
 {
        case "$cur" in
        --*)
-               __gitcomp "--heads --tags --refs --get-url"
+               __gitcomp "--heads --tags --refs --get-url --symref"
                return
                ;;
        esac
@@ -2415,9 +2415,18 @@ _git_remote ()
                ;;
        add,*)
                ;;
+       set-head,--*)
+               __gitcomp "--auto --delete"
+               ;;
+       set-branches,--*)
+               __gitcomp "--add"
+               ;;
        set-head,*|set-branches,*)
                __git_complete_remote_or_refspec
                ;;
+       update,--*)
+               __gitcomp "--prune"
+               ;;
        update,*)
                __gitcomp "$(__git_get_config_variables "remotes")"
                ;;
@@ -2494,7 +2503,7 @@ _git_rm ()
 {
        case "$cur" in
        --*)
-               __gitcomp "--cached --dry-run --ignore-unmatch --quiet --force"
+               __gitcomp "--cached --dry-run --ignore-unmatch --quiet"
                return
                ;;
        esac

-- 
2.10.2

Reply via email to