“Changes” are not the same thing as “files”.
I’d expect that files that are not in version control would not be touched.
Yeah. That’s discussed in more detail in the code change that resulted from the issue report.
It’s a ballsy move by the VSCode team to not only include git clean
but to keep it after numerous issue reports.
As others discussed in that thread, git clean
has no business being offered in a graphical menu where a git novice may find it.
That said, I do think the expanded warning mesage they added addresses the issue by calling out that whatever git
may think, the user is about to lose some files.
“Changes” encompass more than you think. Creating / Deleting files are also changes, not just edits to a file.
- If the change is an edit to a tracked file, “Discard Changes” will reverse the edit.
- If the change is deleting a tracked file, “Discard Changes” will restore it back.
- If the change is a new untracked file, “Discard Changes” will remove it as intended.
It can also be all of them at the same time, which is why VSCode uses “Changes” instead of “Files”.
Apparently, it means changes to the directory structure and what files are in them, not changes within the files themselves. It really ought to be more clear about this.