Ethan@programming.devtoGit@programming.dev•Git: avoid reset --hard, use reset --keep insteadEnglish
251·
2 months agoIf you’re using reset with uncommitted changes and you’re not intentionally throwing them away, you’re doing something wrong. git reset —hard
means “fuck everything, set the state to X”. I only ever use it when I want to throw away the current state.
Using
git reset --keep
would just make more work since I’ll have to throw away uncommitted changes anyways. Removing uncommitted changes is kind of the whole point, it is called ‘reset’ after all. If I want to preserve uncommitted changes, I’ll either stash them or commit them to a temporary branch. That has the added benefit of adding those changes to the reflog so if I screw up later I’ll be able to recover them.