git commit 撤销(reset)

情形1:只是想修改提交说明,或者解决冲突

 git commit --amend

如果此时存在 Change-Id 字段,也要记得删除这条字段所在的整行内容,再保存修改。

情形2:撤销误暂存(commit)的文件

git reset HEAD SomeFileName

情形3:恢复文件成最近提交的状态

git checkout -- SomeFileName

注意:这个操作比较危险,可能会删掉未暂存的修改

情形4:如果 git commit 之后发现了错误或者其他不应该进行 commit 的情况

  1. 先使用 git log 查看日志,并确定你想要返回的 commit 的节点:
commit cad761e9f193336ce78fe49e257bc21d9b9ce1a3
Author: 
Date: 

    some message

commit f93aaf2c5e920c45532dd37ca69ef509461e38b0
Author:
Date: 
  1. 执行 git reset commit_id 命令,撤销 commit 操作。

例如:

git reset f93aaf2c5e920c45532dd37ca69ef509461e38b0

会使我们的 commit 操作撤销,但是我们本次 commit 的代码修改其实是还在的。

如果,我们撤销 commit 时,也不想保留本次的代码修改的话,可以为 reset 加上 --hard 参数:

git reset --hard commit_id

这样操作之后,我们本次的代码修改也会被重置,因此,需要我们仔细权衡使用哪种方式。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 一、电脑本地初始化一个仓库 1. git init: 初始化一个电脑上本地仓库 终端进入项目目录,输入: 该命令将...
    dragon_li阅读 2,999评论 1 4
  • 「心灵签证办事处,」阿冠仰头望着招牌念道。 从玻璃门往里看去,商铺里只有一张书桌,两旁三张椅子,一张靠墙,两张面对...
    Nesier无恙阅读 698评论 0 50
  • 在很多夜晚,我曾忽略你 你独自面对过寂静无边的星辰 在凌晨三点 和我无忧的呼吸 你坠入黑暗的时候独自一人 走了很远...
    深黑色阅读 177评论 0 0
  • 2017.5.19 回到家住的第五天,又陷入了自我矛盾的黑洞。 努力克制自己买买买的冲动,想问自己,现在的我到底配...
    做你的树洞阅读 956评论 0 0
  • 春节过后,不少人恋恋不舍的踏上了离家上班的路,初次在外参加工作的我,自然对这一年一次的家庭团聚时光更为不舍。 母亲...
    剪翊阅读 266评论 0 0