场景一、 使用 git add . 添加了当前目录所有文件,导致提交了不应该的文件
- 首先使用 git status 看一下当前已经 add 了的文件
- 根据自身情况使用以下面命令
命令 | 描述 |
---|---|
git reset HEAD | 上一次add 里面的全部撤销了 |
git reset HEAD fileName | 对某个文件进行撤销了 |
场景二、 使用 git add 后,又使用了 git commit
- 首先使用 git log 查看节点
- 最后根据不同情况进行如下处理
- 还没有 push 的情况,可以使用 git reset 命令
命令 | 描述 |
---|---|
git reset commit_id | 回退到上一个 提交的节点 代码还是原来自己修改的 |
git reset –hard commit_id | 回退到上一个commit节点, 代码也发生了改变,变成上一次的,本次的修改也丢了 |
- 已经 push 的情况,可以使用 git revert 命令(还原已经提交的修改 ,此次操作之前和之后的commit和history都会保留,并且把这次撤销作为一次最新的提交)
命令 | 描述 |
---|---|
git revert HEAD | 撤销前一次 commit |
git revert HEAD^ | 撤销前前一次 commit |
git revert commit-id | 撤销指定的版本,撤销也会作为一次提交进行保存 |
git revert | 提交一个新的版本,将需要revert的版本的内容再反向修改回去,版本会递增,不影响之前提交的内容 |