问题:
Enumerating objects: 7, done.
Counting objects: 100% (7/7), done.
Delta compression using up to 4 threads
error: pack-objects died of signal 9
error: pack-objects died of signal 9
error: remote unpack failed: eof before pack header was fully read
To xxxxx:ebox_os/ebox-apos.git
! [remote rejected] develop -> develop (unpacker error)
error: failed to push some refs to 'git@xxxxx:ebox_os/ebox-apos.git'
解决方法:
1.error: remote unpack failed
第一个报错信息百度了一下,可能是本地仓库过大,需要使用命令 git gc进行清理
原因在于:Git的底层并没有采用 CVS、SVN 底层所采用的那套增量式文件系统,而是采用一套自行维护的存储文件系统。当文件变动发生提交时,
该文件系统存储的不是文件的差异信息,而是文件快照,即整个文件内容,并保存指向快照的索引。这种做法,提高 Git 分支的使用效率;但也容易
导致代码仓库中内容重复程度过高,从而仓库体积过大。当遇到这种情况时,或者需要将仓库推送到远程主机时,就需要Git中的gc(garbage
collect)功能,也就是垃圾回收功能。
————————————————
版权声明:本文为优快云博主「lihuanshuai」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.youkuaiyun.com/lihuanshuai/article/details/37345565
2、[remote rejected] xxxx (unpacker error)
一:权限问题这个问题查资料发现大部分都是权限问题,需要所有者给你开权限;
二:还有就是 疑似某个 git 对象和远程仓库不一致了,远程仓库拒绝了推送。造成这个问题在于–thin 选项,这个选项是 git push 默认的选项,它会向远程仓库推送时进行优化,以将所发送的包降低到最小,它会把发送时忽略本地仓库和远端仓库中共有的部分,只发送不同的部分。
所以推送时可以 去掉这个参数进行推送:–no-thin
git push --no-thin origin xxx
总结:
1.查看自己是否有推送权限,没有先找所有者开通权限(不然白忙活)
2.是否已经进行git pull操作,没有先pull
3.git gc 先清一清垃圾再说,说不定就没问题了
4.–no-thin,提交时去掉优化,直接提交
参考:
版权声明:本文为优快云博主「weixin_43868398」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.youkuaiyun.com/weixin_43868398/article/details/114535660