Completion must sort before using uniq
[gitweb.git] / contrib / completion / git-completion.bash
index 5b255cba69661a2f4d5b6cfa9dbc6a171c5f91ee..48c3abdf987f0843b7886372a374be19a669398d 100644 (file)
@@ -321,7 +321,7 @@ __git_refs ()
                                if [[ "$ref" == "$cur"* ]]; then
                                        echo "$ref"
                                fi
-                       done | uniq -u
+                       done | sort | uniq -u
                fi
                return
        fi
@@ -875,11 +875,15 @@ _git_branch ()
        done
 
        case "$cur" in
+       --set-upstream-to=*)
+               __gitcomp "$(__git_refs)" "" "${cur##--set-upstream-to=}"
+               ;;
        --*)
                __gitcomp "
                        --color --no-color --verbose --abbrev= --no-abbrev
                        --track --no-track --contains --merged --no-merged
-                       --set-upstream --edit-description --list
+                       --set-upstream-to= --edit-description --list
+                       --unset-upstream
                        "
                ;;
        *)
@@ -1072,7 +1076,7 @@ _git_diff ()
 }
 
 __git_mergetools_common="diffuse ecmerge emerge kdiff3 meld opendiff
-                       tkdiff vimdiff gvimdiff xxdiff araxis p4merge bc3
+                       tkdiff vimdiff gvimdiff xxdiff araxis p4merge bc3 codecompare
 "
 
 _git_difftool ()