[git] 如何处理push失败的commit

Posted timeobjserver

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[git] 如何处理push失败的commit相关的知识,希望对你有一定的参考价值。

在使用git及github时,遇到一个问题:commit了一个超过100M的大文件,然后在push时失败,然后就再也无法push了,本地大文件删除了,再commit,再push也还是提示有大文件提交。

这是一种非常常见的问题,是典型案例,原因是本地对大文件的commit记录还在,后来虽然remove了大文件并再次commit,但并不能抹除第一次对大文件的commit记录,因此push时相当于依次执行 commit 大文件,commit remove大文件操作,故失败。

 

解决方法:

1,先保存好本地已经commit但还没有push的版本,

2,本地回退到commit大文件的前一版本,此版本往后的所有本地commit都被抹除了(这就是做步骤1的原因)

3,pull到最新版本

4,将1的东西重新commit上去

5,push

这样就从版本中抹除了 大文件提交的纪录

 

ps: 步2在tortoiseGit右键菜单中是 reset master to this

以上是关于[git] 如何处理push失败的commit的主要内容,如果未能解决你的问题,请参考以下文章

node.js如何处理请求的路由

Git 如何处理二进制文件?

如果用户取消 InApp 购买或只是另一个失败状态,如何处理

git撤销commit

nodejs 异步应该如何处理

如何处理nodejs中的数组缓冲区分配失败?