this post was submitted on 24 Sep 2024
571 points (99.1% liked)
Programming
17499 readers
9 users here now
Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!
Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.
Hope you enjoy the instance!
Rules
Rules
- Follow the programming.dev instance rules
- Keep content related to programming in some way
- If you're posting long videos try to add in some form of tldr for those who don't want to watch videos
Wormhole
Follow the wormhole through a path of communities [email protected]
founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
In recent git versions (>2.23),
git restore
andgit restore --staged
are the preferred ways to discard changes in the working tree (git checkout -- .
) and staged changes (git reset --
) respectively.Huh, TIL.
To be fair,
git switch
was also derived from the features ofgit checkout
in >2.23, but likegit restore
, the manual page warns that behavior may change, and neither are in my muscle memory (lmao).I'll probably keep using checkout since it takes less kb in my head. ~~Besides, we still have to use checkout for checking out a previous commit, even if I learn the more ergonomically appropriate
switch
andrestore
.~~ No deprecation here so...edit: maybe I got that java 8 mindset
edit 2: Correction --
git switch --detach
checks out previous commits. Git checkout may only be there for old scripts' sake, since all of its features have been split off into those two new functions... so there's nothing really keeping me fromswitch
.git switch works on commits too. I don't think you have to use checkout anymore.
Oh, you're right. You just pass the
-d
detach flag. I stand corrected!