SZEDER Gábor <szeder.dev@xxxxxxxxx> writes: > Superficial testing shows that it appears to work in common cases, but > we'll have to think it through when and how to clear these variables. > E.g.: > > $ git d<TAB><TAB> > describe diff difftool > # Oh, but I wanted to disable the pager > $ git --no-p<TAB> > # this completes the option uniquely > $ git --no-pager d<TAB><TAB> > daemon diff diff-index diff-tree > describe diff-files difftool > > I think here it should list only porcelains, but because both those > last_cur variables still contain 'd', it lists plumbing as well. Yup, it always is tricky to "invalidate" a cached value.