git push之后如何重新撤回?

发布时间 2023-05-25 16:02:51作者: 东方昭月

主要是参照了这位大哥的文章(https://www.jb51.net/article/192271.htm

二次参考:git push之后如何重新撤回 - 简书 (jianshu.com)

分为两种方法

第一种方法是: git reset --hard

git reset --hard version // 这个version可以通过Git log来拿 ,也可以通过 github上去看commit的提交记录。
git push -f  // 强制覆盖线上
特点是:

git reset --hard 会把后面的提交记录全部给覆盖掉,
git log 显示的记录是

  • 第三次提交 commitid :3
  • 第二次提交 commitid :2
  • 第一次提交 commitid :1
    此时 如果我执行git reset --hard 1
    这个时候执行git log记录只有一条了。
  • 第一次提交 commitid :1

第二种方法是: git revert -v +版本号

比如:
git log 显示的记录是

  • 第三次提交 commitid :3

  • 第二次提交 commitid :2

  • 第一次提交 commitid :1
    这个时候我执行了git revert -v 2,这个时候会发生的事情是:会把第三次提交的东西保留, 但是第二次提交的东西会被撤销掉, 然后你可以进行修改在提交为第四次commit。
    此时执行git log 显示记录:

  • 第四次提交 commitid :4

  • 第三次提交 commitid :3

  • 第二次提交 commitid :2

  • 第一次提交 commitid :1