git reset
- 常用的到命令,主要有三种情况。
- 错误commit后,仅撤销commit;暂存区、工作区内容不变。
git log
git reset --soft commit-id // commit-id为错误commit之前的,commit-ID
// 如
// commit-id f34a (错误的commit,当前版本库)
// *******
// commit-id d3fs (正确的commit)
// git reset --soft d3fs
- 错误commit后。仅撤销commit和add;工作区内容不变
git log
git reset --mixed commit-id
// 该命令相当于恢复到 git add 之前的状态,同时工作区的内容不变
- 错误commit之后,想要恢复到某个版本库的代码(暂存区,工作区均变化)
git log
git reset --hard commit-id
- 关于版本库,暂存区,工作区,可以如下简单理解
名称 | 含义 |
---|---|
工作区 | 写代码的地方 |
暂存区 | git add 到的地方 |
版本库 | git commit 到的地方 |