git 出现 error Missing tree 的处理办法

Flink流处理
• 阅读 10389

问题:

公司搭建了 gerrit 代码审核服务器.有较低的概率(目前团队中出现过两例),在 git push 提交时,出现如下错误:

git push --receive-pack='git receive-pack --reviewer xxx@xxx.cn --reviewer xx@xx.cn' review HEAD:refs/for/master
Counting objects: 1, done.
Writing objects: 100% (1/1), 241 bytes | 0 bytes/s, done.
Total 1 (delta 0), reused 0 (delta 0)
error: unpack failed: error Missing tree 129d587458f56f4b1f9c492824a97dc717257516
fatal: Unpack error, check server log
To ssh://xx@121.xx.xx.xx:29418/xxxx_v_2_3.git
 ! [remote rejected] HEAD -> refs/for/master (n/a (unpacker error))
error: failed to push some refs to 'ssh://xx@121.xx.xx.xx:29418/xxxx_v_2_3.git'

再次提交也还是会出现同样错误.

解决:

解决方法来自 stackoverflow.
使用如下命令即可推送成功:

git push --no-thin review HEAD:refs/for/master

关键点是 --no-thin 选项. stackoverflow 上的那位答主这么解释的:

默认情况下 git push 会在向服务器推送时进行优化,以将所发送的包降低到最小. 做法是发送时忽略本地仓库和远端仓库中共有的部分. 即 git push 默认是采用 --thin 选项的.
发生本文中出现的问题,貌似是因为某个 git 对象和服务器不一致了.
这时加上 --no-thin 参数,把该传的都传过去,问题就解决了.

参考:

stackoverflow 问题链接

点赞
收藏
评论区
推荐文章
小尉迟 小尉迟
2年前
Error:SyntaxError:JSON Parse error:Unexpected EOF 解决办法
安装Adobe软件出现提示:Error:SyntaxError:JSONParseerror:UnexpectedEOFError:SyntaxError:JSONParseerror:UnexpectedEOF(xxxx)解决办法。这个问题还是有很多小白
放学路上 放学路上
4年前
git基本操作
一、Git下载安装1、git官网:https://gitscm.com/2、官网下载较慢也可以去找国内镜像:https://npm.taobao.org/mirrors/gitforwindows/3、安装完成后鼠标右键出现以下标志代表安装完成:二、git上传代码到远程仓库(以coding为例)1、在磁盘本地创建一个git仓库,如下图创建一个文件夹gitcs
Stella981 Stella981
3年前
Git错误non
当要push代码到git时,出现提示:error:failedtopushsomerefsto...Dealingwith“nonfastforward”errorsFromtimetotimeyoumayencounterthiserrorwhilepushing:1.$ git push
Stella981 Stella981
3年前
Git push
我有两个不同版本的git。在1.6.2版本中,gitpush没有u选项。它只出现在1.7.x版本中。从文档中,u与变量相关branch.<name.merge在gitconfig。该变量如下所述:Defines,togetherwithbranch.<name.remot
Wesley13 Wesley13
3年前
asp.net中使用Global.asax文件中添加应用出错代码,写入系统日志文件或数据库
voidApplication_Error(objectsender,EventArgse){//在出现未处理的错误时运行的代码ExceptionobjErrServer.GetLastError().GetBaseException();//获取错误
Easter79 Easter79
3年前
SpringMvc接受特殊符号参数被转义
WEB开发时,在前端通过get/post方法传递参数的时候 如果实参附带特殊符号,后端接收到的值中特殊符号就会被转义例如该请求: http://localhost:10001/demo/index.do?name张三(1)注:中文()不会出现此种情况后台就收到的实际name值为:  张三&40;1&41;&40;其实为h
Stella981 Stella981
3年前
Eclipse 使用 git 提交代码报错 “there are no staged files”
使用使用eclipse时候向git库提交代码可能会出现一个小问题如下,分享下解决方法。!(https://oscimg.oschina.net/oscnet/4182113659b2f83579db234e754e84b4626.jpg)Window——Preferences——Team——Git——Committing不要勾选红色框的
Wesley13 Wesley13
3年前
Git中代码冲突的解决方式
使用Git管理代码,在进行代码提交的时候,如果出现了冲突该怎么办呢,下面就两种常见的冲突给出了解决方法,希望对大家有所帮助。冲突1:当你commit以后,在执行gitpullrebase的时候出现冲突,请按如下步骤解决:1 找到冲突文件,解决冲突2 执行gitaddxxx(xxx为冲突文件全路径)3 执行git
Stella981 Stella981
3年前
Google地球出现“无法连接到登录服务器(错误代码:c00a0194)”解决方法
Google地球出现“无法连接到登录服务器(错误代码:c00a0194)”解决方法参考文章:(1)Google地球出现“无法连接到登录服务器(错误代码:c00a0194)”解决方法(https://www.oschina.net/action/GoToLink?urlhttps%3A%2F%2Fwww.codeprj.com%2Fblo
Stella981 Stella981
3年前
Git代码防丢指南
我们在日常使用Git的过程中经常会发生一些意外情况,如果处理不当,则可能会出现代码丢失的假象。本文将针对IDEA&Git日常开发中的一些场景,为你层层拨开迷雾,解析常见的错误及其发生原因,让你从此不再惧怕代码冲突或丢失问题。为简化问题,本文假设所有团队成员均在同一分支上开发。文中更新操作是指在IDEA中单击菜单VCS\
布袋罗汉 布袋罗汉
2年前
Error:SyntaxError:JSON Parse error:Unexpected EOF 解决办法
安装Adobe软件出现提示:Error:SyntaxError:JSONParseerror:UnexpectedEOFError:SyntaxError:JSONParseerror:UnexpectedEOF(xxxx)解决办法。这个问题还是有很多小白
Flink流处理
Flink流处理
Lv1
故园渺何处,归思方悠哉。
文章
5
粉丝
0
获赞
0