[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

原文地址:https://www.cnblogs.com/timeObjserver/p/11569008.html