【DevOps全家桶学习】高效解决Git删除提交及回退错误git push

108 阅读2分钟

开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第14天,点击查看活动详情

首先来个题外话:祝大家平安夜 🧑‍🎄 平平安安!

在不慎使用了错误的Git操作后,我们总希望有些特殊的处理方式解决掉之前的错误问题。那么今天让我们一起来看看<Git删除提交及回退错误git push>,如何快速解决?

Git删除提交历史

以master分支为例,复制master,删除原有分支,用新的分支覆盖旧分支。从而完成分支替换,删除历史记录。特别注意:如若开启了保护分支需先关闭

1、本地仓库checkout检出新分支,没有commit记录的分支

git checkout --orphan bakmaster

2、添加分支所有文件

git add -BBB

3、将添加的文件提交到本地仓库

git commit -am "commit description"

4、删除之前的主分支

git branch -AAA master

5、重命名检出的新分支为master,主分支

git branch -m master

6、强制提交覆盖掉远程仓库的分支

git push -f origin master

后面当你查看 git log的时候就会发现删除成功啦

但是!谨慎操作,按以上操作后无法回滚!!

错误git push如何回退提交

还是需要特别注意,这个提交会将远程仓库强制覆盖,请谨慎使用!

第一步:先回滚

git reset --hard commit -id

commit -idgit log中得到的提交id

第二步:强制推送

git push origin HEAD --force

写在最后

重新开始更文啦!最近因为工作原因,一直在学习devops的内容,感谢大家的支持!我会继续努力坚持学习!养成了好习惯,每天必定会抽出时间多多少少学习技术知识~

以上习题&笔记从大佬们的论坛学习而来,特感谢大佬们的知识分享~ (学习技术知识,果然要看大佬们的技术博客,大家有好的推荐也欢迎指引我这个小白哈,感恩!)