Usage of `-u` flag in `git status` cli
- From
- Ajith Sakharia <ajithk.sakharia@gmail.com>
- Date
- Jun 28, 2024, 04:21 UTC
- Message-ID
- <CA+8M_AZTtqSU7ugZ-w8yyOKeP+opambD08DSOGko8akL_CXQqQ@mail.gmail.com>
Hello, I have recently been working on some performance initiatives on git status cli and its usages. As a result I found something confusing and wanted a confirmation on the expected behaviour. Based on documentation the status cli has a `-u/--untracked-files flag with 3 potential values `no` `normal` and `all`. The `true`is expected to be treated as `normal`. But from my experiments it looks like there is a difference in `git status --untracked-files` vs `git status --untracked-files=true` (notice the existence of `true` being explicitly mentioned), where the `git status --untracked-files` gets treated as `git status --untracked-files=all` as suppose to `normal`. Additionally, `--untracked-files=all` doesn't seem to use the benefits of `fsmonitor` and `untracked cache`. From some additional investigations the impact seems to also scale to git plugins across tooling like vscode, warp etc that use the `-u` flag as part of their syncing logic. Could you please help me understand if this is expected ? Regards, Ajith K S