文章目录

  • git 处理commit 成功,push 失败的问题
  • 解决方案
  • 参考文献


git 处理commit 成功,push 失败的问题

在处理自己项目的时候,遇到一个问题:本地commit了一个超过100M的视频,然后在push时报错失败,之后本地删除大文件之后,无论在怎么commit,push还是提示有视频提交报错,远程仓库也无法同步到commit的最新版本。

分析原因是本地对该视频的commit记录还在,后来虽然在本地删除了该视频并再次commit,但并不能抹除第一次的commit记录,因此push时相当于依次执行 commit 大文件,commit 删除视频的操作,故失败。

解决方案

  1. 先保存好本地已经commit但还没有push的版本,后续回退会导致版本回退(一定要保存好)
  2. 本地回退到commit该视频的前一版本,此版本往后的所有本地commit都会被抹除了(这就是做步骤1的原因)
    使用命令:git log,获得commit的版本号。
  3. pull到最新版本:git pull origin master
  4. 将1的东西重新commit上去:git add .git commit -m " "
  5. push到仓库master分支即可:git push origin master