⌘K
git reset
all
Undo commits or unstage changes by resetting the current Git HEAD to the specified state. If a path is passed, it works as "unstage"; if a commit hash or branch is passed, it works as "uncommit".
More info →Options (1)
-p, --patchbooleanInteractively unstage portions of a file
Example:
git reset {{[-p|--patch]}} {{path/to/file}}Examples (7)
Unstage everything
git resetUnstage specific file(s)
git reset path/to/file1 path/to/file2 ...Interactively unstage portions of a file
git reset [-p|--patch] path/to/fileUndo the last commit, keeping its changes (and any further uncommitted changes) in the filesystem
git reset HEAD~Undo the last two commits, adding their changes to the index, i.e. staged for commit
git reset --soft HEAD~2Discard any uncommitted changes, staged or not (for only unstaged changes, use `git checkout`)
git reset --hardReset the repository to a given commit, discarding committed, staged, and uncommitted changes since then
git reset --hard commitmade by @shridhargupta | data from tldr-pages