Re: [PATCH 12/14] completion: let git provide the completable command list
On Sun, May 20, 2018 at 3:20 PM, SZEDER Gábor wrote: > On Sat, May 19, 2018 at 6:27 AM, Nguyễn Thái Ngọc Duy > wrote: >> Instead of maintaining a separate list of command classification, >> which often could go out of date, let's centralize the information >> back in git. >> >> While the function in git-completion.bash implies "list porcelain >> commands", that's not exactly what it does. It gets all commands (aka >> --list-cmds=main,others) then exclude certain non-porcelain ones. We >> could almost recreate this list two lists list-mainporcelain and >> others. The non-porcelain-but-included-anyway is added by the third >> category list-complete. >> >> list-complete does not recreate exactly the command list before this >> patch though. The following commands will disappear from the complete >> list because they are not in command-list.txt and it's not worth >> adding them back: lost-found, peek-remote and tar-tree. > > These commands have been removed long ago, see the topic leading to > 577aed296a (Merge branch 'jk/remove-deprecated', 2013-12-12). Perhaps > you saw them only because they are still somewhere on your $PATH or > $GIT_EXEC_PATH? Right. Old commands remain in my libexec dir. Will clean up this commit message. -- Duy
Re: [PATCH 12/14] completion: let git provide the completable command list
On Sat, May 19, 2018 at 6:27 AM, Nguyễn Thái Ngọc Duy wrote: > Instead of maintaining a separate list of command classification, > which often could go out of date, let's centralize the information > back in git. > > While the function in git-completion.bash implies "list porcelain > commands", that's not exactly what it does. It gets all commands (aka > --list-cmds=main,others) then exclude certain non-porcelain ones. We > could almost recreate this list two lists list-mainporcelain and > others. The non-porcelain-but-included-anyway is added by the third > category list-complete. > > list-complete does not recreate exactly the command list before this > patch though. The following commands will disappear from the complete > list because they are not in command-list.txt and it's not worth > adding them back: lost-found, peek-remote and tar-tree. These commands have been removed long ago, see the topic leading to 577aed296a (Merge branch 'jk/remove-deprecated', 2013-12-12). Perhaps you saw them only because they are still somewhere on your $PATH or $GIT_EXEC_PATH? > Note that the current completion script incorrectly classifies > filter-branch as porcelain and t9902 tests this behavior. We keep it > this way in t9902 because this test does not really care which > particular command is porcelain or plubmbing, they're just names. s/plubmbing/plumbing/