You are viewing a single thread.
View all comments View context
91 points
  1. Ignore the scary warning VS Code shows you when you press the button.
permalink
report
parent
reply
110 points

I dunno, “discard changes” is usually not the same as “delete all files”

permalink
report
parent
reply
33 points

Nowadays the warning even says that this cannot be undone. Maybe that wasn’t present in 1.15, though.

permalink
report
parent
reply
42 points

It was. If you go through the OP thread, one of the responses is a picture of the dialog window that this user clicked through saying, “these changes will be IRREVERSIBLE”.

The OP was just playing with a new kind of fire (VSCodes Git/source control panel) that they didn’t understand, and they got burned.

We all gotta get burnt at least once, but it normally turns us into better devs in the end. I would bet money that this person uses source control now, as long as they are still coding.

permalink
report
parent
reply
1 point

If the “changes” are all your files, discarding them for me means basically delete my files, you know, the ones you are trying to add.

permalink
report
parent
reply
13 points
*

At the same time, OP seems a layman, and might be coming from things like Microsoft Word, where “Discard all changes” basically means “revert to last save”.

EDIT: After reading the related issues, OP may have also thought that “discard changes” was to uninitialise the repository, as opposed to wiping untracked files.

permalink
report
parent
reply
-3 points

What exactly do you think discard means?

permalink
report
parent
reply
68 points

“Changes” are not the same thing as “files”.

I’d expect that files that are not in version control would not be touched.

permalink
report
parent
reply
14 points

Having done exactly 0 research, I going to assume it’s one of those “DO NOT PRESS OKAY UNLESS YOU ARE EXPERIENCED AND KNOW WHAT YOU ARE DOING” and someone went “pffft I know what I’m doing. click now what does this option do…”

permalink
report
parent
reply
29 points

reading through it, it sounds like they opened a project in VSCode, and it saw that there was a local git repo already initialized, with 3 months of changes uncommitted and not staged. So the options there are to stage the changes (git add) to be committed or discard the changes (git checkout -- .). I guess they chose the discard option thinking it was a notification and i guess the filename would be added to gitignore or something? Instead, it discarded the changes, and to the user, it looked like VSCode did rm -rf and not that this was the behavior of git. Since the changes were never committed, even git reflog can’t save them.

permalink
report
parent
reply
30 points

From this issue: https://github.com/microsoft/vscode/issues/32459

It appears that the behavior actually included a git clean. Which is insane in my opinion. Not sure if they changed it since, but there’s definitely a dev defending it.

permalink
report
parent
reply
9 points
*

4. Complain about lack of scary warning.

permalink
report
parent
reply
6 points

Pretty sure the scary warnings in big bold text are more recent than this report.

permalink
report
parent
reply
8 points

Nope. The scary warning is even screenshotted and used as an example in the post report discussion.

It’s quite the fun read!

permalink
report
parent
reply
1 point

Ah yes! They’ve just made it ever scarier, it now reads:

“Are you sure you want to DELETE xxx. This is IRREVERSIBLE! The file will be FOREVER LOST if you proceed”

permalink
report
parent
reply

Programmer Humor

!programmer_humor@programming.dev

Create post

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

  • Keep content in english
  • No advertisements
  • Posts must be related to programming or programmer topics

Community stats

  • 2K

    Monthly active users

  • 861

    Posts

  • 14K

    Comments