当前位置:   article > 正文

git删除push到远程服务器的commit_git 删除远程commit

git 删除远程commit
1.git删除push到远程服务器的新commit
# 1.通过找到想要退回到的哪个commit_id
$ git log
# 2.本地代码变成某个提交记录时刻的代码
$ git reset --hard commit_id
# 3.推送到服务器,一定要加 --force 参数 "master":对应的分支即可
$ git push origin HEAD:master --force
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
2.git删除push到远程服务器的某些commit

比如我的提交历史如下,我现在想删除重构commitB、C,但不影响B、C后的业务提交D

D(业务提交)
C(重构提交)
B(重构提交)
A(业务提交)
  • 1
  • 2
  • 3
  • 4
  • 首先找到BC提交之前的一次提交的A的commit_id,执行如下命令;
git rebase -i A的commit_id
  • 1
  • 将BC两行前面的pick改为drop,然后wq即会删除指定的commit;

在这里插入图片描述

  • 接着执行以下命令,推送到远程仓库;
git push –force
  • 1

此时BC 就被干掉了,没有影响后面的提交

3.git删除commit记录,还没有push到远程分支上
# 1.通过找到想要退回到的commit_id
$ git log 
# 2.本地代码会变成你想要的那次代码。这次之后提交的代码都没有了
$ git reset --hard id 
# 3.完成撤销,停留在当前版本,之前的代码还是在的。只是本地的提交记录没了
$ git reset id 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

参考链接:
1、https://blog.51cto.com/niuben/3028380
2、https://baijiahao.baidu.com/s?id=1681906260101181037&wfr=spider&for=pc

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/617451
推荐阅读
相关标签
  

闽ICP备14008679号