From: Junio C Hamano Date: Wed, 3 Feb 2016 22:16:03 +0000 (-0800) Subject: Merge branch 'tb/complete-word-diff-regex' X-Git-Tag: v2.8.0-rc0~79 X-Git-Url: https://git.lorimer.id.au/gitweb.git/diff_plain/cc329f65a34911999cfbb68bd83c6a54b93e461c?hp=-c Merge branch 'tb/complete-word-diff-regex' * tb/complete-word-diff-regex: completion: complete "diff --word-diff-regex=" --- cc329f65a34911999cfbb68bd83c6a54b93e461c diff --combined contrib/completion/git-completion.bash index 51f5223e2a,612e30b00a..a2db20c81f --- a/contrib/completion/git-completion.bash +++ b/contrib/completion/git-completion.bash @@@ -10,7 -10,6 +10,7 @@@ # *) local and remote tag names # *) .git/remotes file names # *) git 'subcommands' +# *) git email aliases for git-send-email # *) tree paths within 'ref:path/to/file' expressions # *) file paths within current working directory and index # *) common --long-options @@@ -664,7 -663,6 +664,7 @@@ __git_list_porcelain_commands ( check-mailmap) : plumbing;; check-ref-format) : plumbing;; checkout-index) : plumbing;; + column) : internal helper;; commit-tree) : plumbing;; count-objects) : infrequent;; credential) : credentials;; @@@ -746,8 -744,9 +746,8 @@@ __git_compute_porcelain_commands ( __git_get_config_variables () { local section="$1" i IFS=$'\n' - for i in $(git --git-dir="$(__gitdir)" config --get-regexp "^$section\..*" 2>/dev/null); do - i="${i#$section.}" - echo "${i/ */}" + for i in $(git --git-dir="$(__gitdir)" config --name-only --get-regexp "^$section\..*" 2>/dev/null); do + echo "${i#$section.}" done } @@@ -1169,7 -1168,7 +1169,7 @@@ __git_diff_common_options="--stat --num --no-prefix --src-prefix= --dst-prefix= --inter-hunk-context= --patience --histogram --minimal - --raw --word-diff + --raw --word-diff --word-diff-regex= --dirstat --dirstat= --dirstat-by-file --dirstat-by-file= --cumulative --diff-algorithm= @@@ -1312,7 -1311,6 +1312,7 @@@ _git_grep ( --full-name --line-number --extended-regexp --basic-regexp --fixed-strings --perl-regexp + --threads --files-with-matches --name-only --files-without-match --max-depth @@@ -1669,10 -1667,7 +1669,10 @@@ _git_push ( _git_rebase () { local dir="$(__gitdir)" - if [ -d "$dir"/rebase-apply ] || [ -d "$dir"/rebase-merge ]; then + if [ -f "$dir"/rebase-merge/interactive ]; then + __gitcomp "--continue --skip --abort --edit-todo" + return + elif [ -d "$dir"/rebase-apply ] || [ -d "$dir"/rebase-merge ]; then __gitcomp "--continue --skip --abort" return fi @@@ -1714,15 -1709,6 +1714,15 @@@ __git_send_email_suppresscc_options="au _git_send_email () { + case "$prev" in + --to|--cc|--bcc|--from) + __gitcomp " + $(git --git-dir="$(__gitdir)" send-email --dump-aliases 2>/dev/null) + " + return + ;; + esac + case "$cur" in --confirm=*) __gitcomp " @@@ -1747,12 -1733,6 +1747,12 @@@ " "" "${cur##--thread=}" return ;; + --to=*|--cc=*|--bcc=*|--from=*) + __gitcomp " + $(git --git-dir="$(__gitdir)" send-email --dump-aliases 2>/dev/null) + " "" "${cur#--*=}" + return + ;; --*) __gitcomp "--annotate --bcc --cc --cc-cmd --chain-reply-to --compose --confirm= --dry-run --envelope-sender @@@ -1794,7 -1774,15 +1794,7 @@@ __git_config_get_set_variables ( c=$((--c)) done - git --git-dir="$(__gitdir)" config $config_file --list 2>/dev/null | - while read -r line - do - case "$line" in - *.*=*) - echo "${line/=*/}" - ;; - esac - done + git --git-dir="$(__gitdir)" config $config_file --name-only --list 2>/dev/null } _git_config () @@@ -1809,7 -1797,7 +1809,7 @@@ return ;; branch.*.rebase) - __gitcomp "false true" + __gitcomp "false true preserve interactive" return ;; remote.pushdefault) @@@ -1899,7 -1887,6 +1899,7 @@@ --get --get-all --get-regexp --add --unset --unset-all --remove-section --rename-section + --name-only " return ;; @@@ -2131,7 -2118,6 +2131,7 @@@ http.postBuffer http.proxy http.sslCipherList + http.sslVersion http.sslCAInfo http.sslCAPath http.sslCert