适用场景
撤销提交或取消暂存,将当前 Git HEAD 重置到指定状态。 本条为命令参考与排查示例;请先确认命令已安装,再按示例定位实际参数和输出。
git reset
撤销提交或取消暂存,将当前 Git HEAD 重置到指定状态。 如果传入文件路径,则执行"取消暂存";如果传入提交哈希或分支名,则执行"撤销提交"。 更多信息:https://git-scm.com/docs/git-reset。
- 取消暂存所有文件:
git reset
- 取消暂存指定文件:
git reset {{路径/到/文件1 路径/到/文件2 ...}}
- 交互式地取消暂存文件的部分内容:
git reset {{[-p|--patch]}} {{路径/到/文件}}
- 撤销最近一次提交,保留其更改(以及所有未提交的更改)在工作区中:
git reset HEAD~
- 撤销最近两次提交,将其更改保留到暂存区中:
git reset --soft HEAD~2
- 丢弃所有未提交的更改(包括已暂存和未暂存的),仅丢弃未暂存的更改请使用
git checkout:
git reset --hard
- 将仓库重置到指定提交,丢弃该提交之后的所有已提交、已暂存和未暂存的更改:
git reset --hard {{提交哈希}}