在项目中我们也经常会使用到撤销操作 使用这一节我们就讲一讲Git的撤销操作
撤销操作主要有如下几种
git commit --amend 撤销上一次提交 并讲暂存区文件重新提交 git checkout -- <file> 拉取暂存区文件 并将其替换成工作区文件 git reset HEAD -- <file> 拉取最近一次提交到版本库的文件到暂存区 改操作不影响工作区
git commit --amend
该命令可以用来撤销上一次提交到版本库的操作 并将暂存区重新提交到版本库中
简单的说就是可以帮我们 修改 最近一次提交到版本库的内容
下面我们来演示一下 git commit --amend 的操作
我们先 git log --oneline 显示一下我们的提交记录
$ git log --oneline
c8a7da4 (HEAD -> master) version 4.0
5e39288 version 3.0
4378903 version 2.0
f0a1684 version 1.0
这是我们项目中的文件

index.html 的内容也非常简单 version 是几 就在 在 <h1> 标签中输出version几 如下图 version 4.0 <h1> 就为 <h1>this is Version 4.0</h1>

我们现在准备提交5.0版本 但是我们不小心把 <h1> 改为 this is Version 50.0 并且提交到了版本库
这时我们需要把刚刚提交到的版本库的操作撤销掉 并将正确的5.0版本提交 这时我们就需要用到 git commit –amend 命令了
首先我们把工作区的 <h1> 改为正确的 this is Version 5.0 然后 git add 到暂存区 再使用 git commit –amend 命令即可
这时会出现下面的界面

这是vim编辑器的界面 最上面的 version5.0 是我们上次提交是的备注 由于我们这次提交的还是5.0版本所以就不用修改 下面的 modified: index.html 则表明我们这次重修提交修改了 index.html 文件
按 Esc+w+q 我们保存退出

提交成功 再次查看 git log --oneline

发现只有五次提交说明我们刚刚是在修改 而不是再次提交
现在我们把工作区的 index.html 删除 然后使用 git reset --hard 65a7643 (65a7643为git log 打印出的版本号 ) 来回退到 我们刚刚修改提交的 version 5.0 版本 如果修改了 <h1> 应该为 this is Version 5.0
执行命令 rm -rf index.html 然后 git reset --hard 65a7643




如上图 我们修改成功 git commit --amend 命令 使用成功
4638

被折叠的 条评论
为什么被折叠?



