error: remote unpack failed: error Missing tree

一、报错原因

对于该报错,官方的解释为可能为仓库损坏或网络问题等原因,但在我们实际开发过程中,绝大多数情况是因为,远程仓库有其他人提交的修改,本地尚未拉取最新代码。

二、解决方案

1、撤回提交

如前面所说,远程仓库有其他人提交的修改,如果不嫌撤回本地commit的话,我们是无法pull代码的。
所以在pull之前,我们需先试用如下代码,撤回本地的上一次commit

git reset --soft HEAD^
2、暂存代码

将本地修改代码先提交到暂存区,防止拉代码时,远程仓库代码和本地修改代码冲突

git stash
3、重新拉取

撤回提交后,即可重新拉取远程仓库代码,命令如下

git pull origin QL_DEV

QL_DEV为我的分支名,根据自己实际情况做出修改。

4、暂存区代码应用

在拉取完代码后,可重新将本地修改代码重新取出

git stash apply

注:此步骤可能出现代码冲突,需手动解决

5、重新提交代码

解决完可能出现的冲突后,即可重新走提交代码步骤

-- 从暂存区取出的代码,需要重新add,并非多余步骤
git add .

git commit -m 'comment'

git push origin QL_DEV
6、问题解决

在这里插入图片描述

  • 7
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

igxia

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值