当前位置:首 页 > 我的日记 >知识库 > 查看文章

GIT 如何删除某个本地的提交

知识库 你是第59个围观者 4条评论 供稿者: 标签:

一、rm后要commit一下才会生效,但这样只是让文件不再出现在今后的版本中,文件副本仍然会在.git/下(这样git才能让误删的文件恢复)。 

要彻底消灭文件副本,那就要让文件彻底从历史中消失,分两种情况:

1、如果你的文件添加记录是最近1次,而且没有别的更改,可以简单使用reset –hard <commit_id>来彻底回溯,然后gc一下再上传就没问题了。

2、如果是在你N次提交以内的某次,而且同时还有别的重要提交,那最好用rebase合并一下这几次提交记录(包括rm的commit),然后再gc提交

二、撤销commit的一些方法

1、git reset –mixed:此为默认方式,不带任何参数的git reset,即时这种方式,它回退到某个版本,只保留源码,回退commit和index信息

2、git reset –soft:回退到某个版本,只回退了commit的信息,不会恢复到index file一级。如果还要提交,直接commit即可

3、git reset –hard:彻底回退到某个版本,本地的源码也会变为上一个版本的内容

三、其他一些方法

1、git revert 是撤销某次操作,此次操作之前的commit都会被保留

2、git reset 是撤销某次提交,但是此次之后的修改都会被退回到暂存区

3、git reset –hard HEAD~1

4、git revert HEAD

这家伙很懒,什么都没写!

—— zhaorong

zhaorong
你可能也喜欢Related Posts
众说纷纭Comments
大眼 可爱 大笑 坏笑 害羞 发怒 折磨 快哭了 大哭 白眼 晕 流汗 困 腼腆 惊讶 憨笑 色 得意 骷髅 囧 睡觉 眨眼 亲亲 疑问 闭嘴 难过 淡定 抗议 鄙视 猪头
小提示:直接粘贴图片到输入框试试
努力发送中...
  1. 1 楼 1163848899

    博客还真是个好东西!

    2018年01月27日 03:48:45 回复 取消回复
  2. 2 楼 闺房独自乐

    不错!不错!感觉好极了!

    2018年01月30日 07:35:10 回复 取消回复
  3. 3 楼 屌炸天

    新春佳节到。祝好!祝好!

    2018年02月06日 04:19:31 回复 取消回复
  4. 4 楼 趣头条

    鸟儿叫,花儿笑,一年一季春来到!

    2018年02月07日 01:37:35 回复 取消回复
  • 评论最多
  • 最新评论
  • 随机文章
footer logo
未经许可请勿自行使用、转载、修改、复制、发行、出售、发表或以其它方式利用本网站之内容
Copyright © zhaorong All Rights Reserved. 滇ICP备15006105号-1