@@ -853,6 +853,11 @@ __git_compute_merge_strategies ()
853853 __git_merge_strategies=$( __git_list_merge_strategies)
854854}
855855
856+ __git_merge_strategy_options=" ours theirs subtree subtree= patience
857+ histogram diff-algorithm= ignore-space-change ignore-all-space
858+ ignore-space-at-eol renormalize no-renormalize no-renames
859+ find-renames find-renames= rename-threshold="
860+
856861__git_complete_revlist_file ()
857862{
858863 local dequoted_word pfx ls ref cur_=" $cur "
@@ -996,12 +1001,21 @@ __git_complete_strategy ()
9961001 -s|--strategy)
9971002 __gitcomp " $__git_merge_strategies "
9981003 return 0
1004+ ;;
1005+ -X)
1006+ __gitcomp " $__git_merge_strategy_options "
1007+ return 0
1008+ ;;
9991009 esac
10001010 case " $cur " in
10011011 --strategy=* )
10021012 __gitcomp " $__git_merge_strategies " " " " ${cur## --strategy=} "
10031013 return 0
10041014 ;;
1015+ --strategy-option=* )
1016+ __gitcomp " $__git_merge_strategy_options " " " " ${cur## --strategy-option=} "
1017+ return 0
1018+ ;;
10051019 esac
10061020 return 1
10071021}
@@ -1163,6 +1177,7 @@ __git_count_arguments ()
11631177}
11641178
11651179__git_whitespacelist=" nowarn warn error error-all fix"
1180+ __git_patchformat=" mbox stgit stgit-series hg mboxrd"
11661181__git_am_inprogress_options=" --skip --continue --resolved --abort --quit --show-current-patch"
11671182
11681183_git_am ()
@@ -1177,6 +1192,10 @@ _git_am ()
11771192 __gitcomp " $__git_whitespacelist " " " " ${cur## --whitespace=} "
11781193 return
11791194 ;;
1195+ --patch-format=* )
1196+ __gitcomp " $__git_patchformat " " " " ${cur## --patch-format=} "
1197+ return
1198+ ;;
11801199 --* )
11811200 __gitcomp_builtin am " " \
11821201 " $__git_am_inprogress_options "
@@ -1200,6 +1219,10 @@ _git_apply ()
12001219_git_add ()
12011220{
12021221 case " $cur " in
1222+ --chmod=* )
1223+ __gitcomp " +x -x" " " " ${cur## --chmod=} "
1224+ return
1225+ ;;
12031226 --* )
12041227 __gitcomp_builtin add
12051228 return
@@ -1260,6 +1283,8 @@ _git_bisect ()
12601283 esac
12611284}
12621285
1286+ __git_ref_fieldlist=" refname objecttype objectsize objectname upstream push HEAD symref"
1287+
12631288_git_branch ()
12641289{
12651290 local i c=1 only_local_ref=" n" has_r=" n"
@@ -1343,6 +1368,9 @@ _git_cherry_pick ()
13431368 __gitcomp " $__git_cherry_pick_inprogress_options "
13441369 return
13451370 fi
1371+
1372+ __git_complete_strategy && return
1373+
13461374 case " $cur " in
13471375 --* )
13481376 __gitcomp_builtin cherry-pick " " \
@@ -1506,6 +1534,10 @@ _git_fetch ()
15061534 __gitcomp " $__git_fetch_recurse_submodules " " " " ${cur## --recurse-submodules=} "
15071535 return
15081536 ;;
1537+ --filter=* )
1538+ __gitcomp " blob:none blob:limit= sparse:oid= sparse:path=" " " " ${cur## --filter=} "
1539+ return
1540+ ;;
15091541 --* )
15101542 __gitcomp_builtin fetch
15111543 return
@@ -1702,8 +1734,8 @@ __git_log_shortlog_options="
17021734 --all-match --invert-grep
17031735"
17041736
1705- __git_log_pretty_formats=" oneline short medium full fuller email raw format:"
1706- __git_log_date_formats=" relative iso8601 rfc2822 short local default raw"
1737+ __git_log_pretty_formats=" oneline short medium full fuller email raw format: mboxrd "
1738+ __git_log_date_formats=" relative iso8601 iso8601-strict rfc2822 short local default raw unix format: "
17071739
17081740_git_log ()
17091741{
@@ -2221,7 +2253,7 @@ _git_config ()
22212253 return
22222254 ;;
22232255 diff.submodule)
2224- __gitcomp " log short "
2256+ __gitcomp " $__git_diff_submodule_formats "
22252257 return
22262258 ;;
22272259 help.format)
@@ -2388,6 +2420,10 @@ _git_remote ()
23882420_git_replace ()
23892421{
23902422 case " $cur " in
2423+ --format=* )
2424+ __gitcomp " short medium long" " " " ${cur## --format=} "
2425+ return
2426+ ;;
23912427 --* )
23922428 __gitcomp_builtin replace
23932429 return
@@ -2429,6 +2465,7 @@ _git_revert ()
24292465 __gitcomp " $__git_revert_inprogress_options "
24302466 return
24312467 fi
2468+ __git_complete_strategy && return
24322469 case " $cur " in
24332470 --* )
24342471 __gitcomp_builtin revert " " \
0 commit comments