- 覆盖上一次的提交或重新更新提交说明
$ git commit --amend -m '我再次提交啦,上一次的提交已经不见啦。这是一个危险的操作哦。哈哈,其实并不危险,也是可以数据恢复的啦'
- 取消已暂存的文件,让文件回到本地已修改的状态
/* $ git add * $ git status On branch master Changes to be committed: (use "git reset HEAD <file>..." to unstage) renamed: README.md -> README modified: CONTRIBUTING.md */ --上面的语句告诉我们可以使用:git reset HEAD <file>... 来撤销暂存区的数据 --撤销暂存区 test.js的修改,不过本地的文件还是处于修改的状态 git reset HEAD test.js
- 撤销对文件的更改(还没进入暂存区)
/* Changes not staged for commit: (use "git add <file>..." to update what will be committed) (use "git checkout -- <file>..." to discard changes in working directory) modified: CONTRIBUTING.md */ --上面的语句告诉我们可以使用: git checkout -- <file>...来撤销对文件的更改 --撤销对test.js的更改,相当于重新获取版本库的最新版本用来覆盖本地的版本。 git checkout --test.js