git commit的文件太大导致push失败解决方法

git commit的文件太大导致push失败解决方法:


问题描述

当提交本地修改到仓库时,出现如下问题:
文件大小超过100MB,导致不能成功push
文件超过100MB


解决办法:

这里整理了两种方法:

git reset

git reset 命令用于回退版本,可以指定退回某一次提交的版本。

git reset 命令语法格式如下:

git reset [--soft | --mixed | --hard] [HEAD]

–mixed 为默认,可以不用带该参数,用于重置暂存区的文件与上一次的提交(commit)保持一致,工作区文件内容保持不变。

具体实例:

git reset HEAD^            # 回退所有内容到上一个版本 
git reset HEAD^ hello.php  # 回退 hello.php 文件的版本到上一个版本  
git  reset  052e           # 回退到指定版本

该方法简单粗暴,当然某些情况下不适合使用。目前还没有遇到,暂且不讨论。

参考 菜鸟教程了解更多

git revert

相较于git reset,该命令更加温和,直接在commit提交的东西上修改,当然也相对更加复杂

操作

git revert -n commit-id

只会revert commit-id对应的内容,然后重新commit一个信息,不会影响其他的commit内容,如图是成功进入Revertinig的模式

这时候就重新进行一次提交就可,但是这个过程中不能再提交超过100MB的大文件。
在这里插入图片描述
冲突的相关操作
处理git revert过程中遇到的冲突

合并冲突后退出

git revert --abort

当前的操作会回到指令执行之前的样子,相当于啥也没有干,回到原始的状态

合并后退出,但是保留变化

git revert --quit

总结

浅谈一下git reset和git revert的区别

  • git reset 是回滚到对应的commit-id,相当于是删除了commit-id以后的所有的提交,并且不会产生新的commit-id记录,如果要推送到远程服务器的话,需要强制推送-f
  • git revert 是反做撤销其中的commit-id,然后重新生成一个commit-id。本身不会对其他的提交commit-id产生影响,如果要推送到远程服务器的话,就是普通的操作git push就好了
  • 公共分支上找到不同分支的父节点,reset以后才重新提交,但是当commit信息混合到一起后,你想找都commit信息都困难。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值