git怎样删除远程仓库的某次错误提交?

假设你有3个commit如下:

我们提供的服务有:网站制作、网站建设、微信公众号开发、网站优化、网站认证、隆尧ssl等。为上1000家企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的隆尧网站制作公司

commit 3
commit 2
commit 1

其中最后一次提交commit 3是错误的,那么可以执行:

git reset --hard HEAD~1

你会发现,HEAD is now at commit 2

然后再使用git push --force将本次变更强行推送至服务器。这样在服务器上的最后一次错误提交也彻底消失了。

值得注意的是,这类操作比较比较危险,例如:在你的commit 3之后别人又提交了新的commit 4,那在你强制推送之后,那位仁兄的commit 4也跟着一起消失了。

b00cc5a是git上提交的番号,想退到哪里就写哪里。

iosdeMac-mini-2:ZZV2ex ios$ git reset b00cc5a

iosdeMac-mini-2:ZZV2ex ios$ git push --force

Total 0 (delta 0), reused 0 (delta 0)

To https://github.com/mlpqaz/V2ex.git

 + 7336f1a...b00cc5a master -> master (forced update)

iosdeMac-mini-2:ZZV2ex ios$ 


名称栏目:git怎样删除远程仓库的某次错误提交?
网站网址:http://myzitong.com/article/jpodop.html