[PATCH v2 1/2] tab completion of filenames for 'git restore'
- From
David Cantrell via GitGitGadget <gitgitgadget@gmail.com>
- Date
- Mar 15, 2022, 00:52 UTC
- Message-ID
- <2bb8f1cb1c4072bed544baa34451ed0093e2f007.1647305547.git.gitgitgadget@gmail.com>
- In-Reply-To
- <pull.1227.v2.git.git.1647305547.gitgitgadget@gmail.com>
From: David Cantrell <david@cantrell.org.uk>
If no --args are present after 'git restore' it assumes that you want to tab-complete one of the files with uncommitted changes
Signed-off-by: David Cantrell <david@cantrell.org.uk> --- contrib/completion/git-completion.bash | 7 +++++++ 1 file changed, 7 insertions(+)
diff --git a/contrib/completion/git-completion.bash b/contrib/completion/git-completion.bash index 49a328aa8a4..7ccad8ff4b1 100644 --- a/contrib/completion/git-completion.bash +++ b/contrib/completion/git-completion.bash @@ -2883,14 +2883,21 @@ _git_restore () case "$cur" in --conflict=*) __gitcomp "diff3 merge zdiff3" "" "${cur##--conflict=}" + return ;; --source=*) __git_complete_refs --cur="${cur##--source=}" + return ;; --*) __gitcomp_builtin restore + return ;; esac + + if __git rev-parse --verify --quiet HEAD >/dev/null; then + __git_complete_index_file "--committable" + fi } __git_revert_inprogress_options=$__git_sequencer_inprogress_options
-- gitgitgadget