Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/kubernetes/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
git致命错误:读取对象xxx失败:参数无效_Git - Fatal编程技术网

git致命错误:读取对象xxx失败:参数无效

git致命错误:读取对象xxx失败:参数无效,git,Git,如果我从远程提取,我将得到以下错误 $ git pull remote: Counting objects: 85, done. remote: Compressing objects: 100% (37/37), done. remote: Total 85 (delta 63), reused 69 (delta 48) Unpacking objects: 100% (85/85), done. error: inflate: data stream error (unknown comp

如果我从远程提取,我将得到以下错误

$ git pull
remote: Counting objects: 85, done.
remote: Compressing objects: 100% (37/37), done.
remote: Total 85 (delta 63), reused 69 (delta 48)
Unpacking objects: 100% (85/85), done.
error: inflate: data stream error (unknown compression method)
fatal: failed to read object 8b0fd4094630fea108b60faa15535ffbc85d87cb: Invalid argument
error: http://myremoterepo.com/project.git did not send all necessary objects
我可以在本地提交。当我检查状态时:

> $ git status On branch vikas Your branch is based on 'origin/master',
> but the upstream is gone.   (use "git branch --unset-upstream" to
> fixup) nothing to commit, working directory clean

我终于解决了这个问题。 我想问题发生在我的电脑因断电而关机时

我可以在我的本地分支机构中提交任何更改。这意味着我的包文件没有损坏,但某些引用无效

首先备份您的
.git
。然后我使用
git fsck
命令

$ git fsck --full
error: inflate: data stream error (unknown compression method)
error: unable to unpack 38fe6f16c7e8246d61150f0bc42629dbb532b5ce header
error: inflate: data stream error (unknown compression method)
fatal: loose object 38fe6f16c7e8246d61150f0bc42629dbb532b5ce (stored in .git/objects/38/fe6f16c7e8246d61150f0bc42629dbb532b5ce) is corrupt
我删除了文件
.git/objects/38/fe6f16c7e8246d61150f0bc42629dbb532b5ce
,并继续这些步骤,直到获得以下输出:

$ git fsck --full
Checking object directories: 100% (256/256), done.
Checking objects: 100% (168543/168543), done.
error: refs/remotes/origin/staging: invalid sha1 pointer 0000000000000000000000000000000000000000
error: refs/remotes/origin/development: invalid sha1 pointer 0000000000000000000000000000000000000000
error: refs/remotes/origin/master: invalid sha1 pointer 0000000000000000000000000000000000000000
error: bad ref for refs/remotes/origin/staging
broken link from  commit 8b0fd4094630fea108b60faa15535ffbc85d87cb
              to  commit bac9f287963b1abb9e4b376b44b4a6500018e9fe
Checking connectivity: 169821, done.
dangling blob 750718546640b5b14c19cbdb9958d7bcc4b1114c
dangling blob e313786318d4c76004728f15a25c6fa68c88b67e
dangling blob ee3fd85992b48173f6c344a9f4a2f9667d4e1940
dangling blob cd4898a3ec525e559292337c0bc6b68a77270b52
dangling blob 9973506f35af1bf4e7790be57b02c70852843f92
dangling blob 47ca4080b9a528efe23c9f7dce994815f5f9162a
dangling blob 39d6807d215a7e74fb987d951a90e1d3e24a97eb
dangling blob c0d650286c3702d56b827eded27eaa9515212847
dangling commit 53db70d776ec7a59c10db106ef2585abea1ffddd
...
现在我删除了所有三个ref(
.git/refs/remotes/origin/master
.git/refs/remotes/origin/staging
.git/refs/remotes/origin/development

瞧!现在我可以拉和推了


中了解到,我在运行时出现此错误。电脑重启没有帮助。停止
Malwarebytes
进程修复了它。因此,请尝试禁用/停止病毒扫描程序,因为这也可能导致此问题。

请参阅和当我打开文件时
8b/0fd4094630fea108b60faa15535ffbc85d87cb
,它的
0000 0000
NULL-NULL…
在删除这些对象后会删除未解析的增量objects@Vicas:你能详细说明你所说的“…删除了所有三个参考…”的确切含义吗?你的意思是简单地删除这些文件吗?删除他们的内容?@Vikas:对不起,我拼错了。。。请看上面。谢谢是否需要删除.git/refs/remotes/origin中的引用?在完成前两个步骤后,我成功地运行了“git status”。在我只获得了
悬挂blob
日志之后,我运行了
git prune
,所有这些日志都消失了。