在项目中我们也经常会使用到撤销操作 使用这一节我们就讲一讲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 命令 使用成功


 

 

 

 

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐