Tutorial
Extract
| Command | Scope | Common use cases |
|---|---|---|
git reset |
Commit-level | Discard commits in a private branch or throw away uncommited changes |
git reset |
File-level | Unstage a file |
git checkout |
Commit-level | Switch between branches or inspect old snapshots |
git checkout |
File-level | Discard changes in the working directory |
git revert |
Commit-level | Undo commits in a public branch |
git revert |
File-level | (N/A) |
git reset to alter the staged snapshot and/or the working directory by passing it one of the following flags:
--soft– The staged snapshot and working directory are not altered in any way.--mixed– The staged snapshot is updated to match the specified commit, but the working directory is not affected. This is the default option.--hard– The staged snapshot and the working directory are both updated to match the specified commit.