this post was submitted on 20 Nov 2024
858 points (97.5% liked)

Programmer Humor

19817 readers
89 users here now

Welcome to Programmer Humor!

This is a place where you can post jokes, memes, humor, etc. related to programming!

For sharing awful code theres also Programming Horror.

Rules

founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
[–] bitwolf@sh.itjust.works 28 points 1 month ago (3 children)

It does warn you it will erase the file when you discard...

[–] JackbyDev@programming.dev 14 points 1 month ago (2 children)

Go read the actual thread. There was a bug someone found that files you have in there that aren't even associated with git still get deleted. I'm not entirely convinced this was the poster's fault.

[–] Scoopta@programming.dev 9 points 1 month ago (1 children)

It's not a bug, it's intentional. They consider changes to be any change since the last commit including in untracked files. They did update it to make this behavior a lot more obvious though.

[–] JackbyDev@programming.dev 7 points 1 month ago (1 children)

This comment in particular does a great job of explaining the UX problem with this. https://github.com/microsoft/vscode/issues/32459#issuecomment-322160461

[–] Scoopta@programming.dev 6 points 1 month ago

Yes, honestly this situation reminds me a lot of the LTT trying Linux and destroying his system by installing steam despite apt warning him in the best way it really could that he probably didn't want to do that. Sure the package shouldn't have been in that state in a stable distro but shit happens. It goes to that point of, users will go through great lengths to achieve the end goal blindly jumping past warnings on the way no matter how dire they might be.

[–] bitwolf@sh.itjust.works 1 points 1 month ago

I did read the whole thread. I also referenced the resolution further down the comment thread.

They've adjusted the error message to be abundantly clear after the fact.

[–] kalpol@lemmy.world 12 points 1 month ago (2 children)

Warns you that changes will be discarded....not quite the same words

[–] bitwolf@sh.itjust.works -4 points 1 month ago* (last edited 1 month ago) (1 children)

I just tried right now to get the exact message.

Are you sure you want to DELETE foo?
This is IRREVERSIBLE!
This file will be FOREVER LOST if you proceed.

The confirmation button even says Delete File...

User error.

[–] jas0n@lemmy.world 13 points 1 month ago (1 children)
[–] bitwolf@sh.itjust.works 9 points 1 month ago

Ah looking at issue 32459 it was addressed shortly after.

You're right that it did originally say "Discard".

[–] zalgotext@sh.itjust.works -5 points 1 month ago (2 children)

If you use git and understand that VSC's source control stuff is just a thin wrapper around git, you should understand what "discard all changes" means

[–] JackbyDev@programming.dev 6 points 1 month ago* (last edited 1 month ago) (1 children)

"discard" is not a git operation. Reset and restore are, but those weren't the words used.

[–] zalgotext@sh.itjust.works 0 points 1 month ago (1 children)

I'm not claiming that "discard" is a git action. I'm claiming a git user should understand what's meant by the phrase "discard changes". Run git status in a repo that has changes in the working directory. In the resulting output, there's a message:

Changes not staged for commit:
    (use "git add <file>..." to update what will be committed) 
    (use "git restore <file>..." to discard changes in working directory)
        ...

The phrase "discard changes" is used consistently in git's output.

[–] JackbyDev@programming.dev 3 points 1 month ago (1 children)
[–] zalgotext@sh.itjust.works 3 points 1 month ago

Ok that's understandable, I didn't realize VSCode used to delete untracked files as well as a result of clicking through that dialogue.

[–] mindbleach@sh.itjust.works 1 points 1 month ago

Broken stair apologism.

[–] SPRUNT@lemmy.world -3 points 1 month ago

Man who clicks confirmation for leopards to delete his work is angry and surprised when his work is deleted.