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
git无法在一个项目上提取代码,但在另一个项目上可以正常工作_Git_Gerrit - Fatal编程技术网

git无法在一个项目上提取代码,但在另一个项目上可以正常工作

git无法在一个项目上提取代码,但在另一个项目上可以正常工作,git,gerrit,Git,Gerrit,我无法在我的一个项目上提取或获取代码 发出的命令: $ git pull origin master 错误消息: fatal: internal server error remote: internal server error fatal: protocol error: bad pack header 不过,我可以在同一个项目上拉补丁,在其他项目上拉取原始主机 在哪里可以看到更详细的日志?我如何解决这个问题 [编辑] git fsck输出: Checking object dir

我无法在我的一个项目上提取或获取代码

发出的命令:

$ git pull origin master
错误消息:

fatal: internal server error
remote: internal server error
fatal: protocol error: bad pack header
不过,我可以在同一个项目上拉补丁,在其他项目上拉取原始主机

在哪里可以看到更详细的日志?我如何解决这个问题

[编辑]

git fsck输出:

   Checking object directories: 100% (256/256), done.
   Checking objects: 100% (5155/5155), done.
   dangling blob 788d9159c3698bfcc753969387873989ac68d22f
   dangling blob d554a3844da9322ad6e0789dbec37d7679e9868c
   dangling blob e5d5dd07a27033814fb35be2ee28f38fdc13baca
   dangling blob 2116ab3d9b64d5d609b8ccc309970aeecb9bed2f
   dangling blob 07182a7ec9d47649f46a53c0d356c1b099086ed2
   dangling blob 7358ba2f4a5577183450c36491cf0a8221d4fdf1
   dangling blob 0f9d09248f5694d94d726b77c43bca5fa599ce99
   dangling blob eab7222fdb583fd3b80f693fb7422bfba7360644
   dangling blob c9384efaec1e9cd42e352de79c413140b90037de
   dangling blob 03bd2e76f8a30936d14af97039e2feb4110c87ac
配置文件:

   [core]
         repositoryformatversion = 0
         filemode = false
         bare = false
         logallrefupdates = true
         symlinks = false
         ignorecase = true
   [remote "origin"]
         url = ssh://<userId>@review.quicinc.com:29418/<projectName>
         fetch = +refs/heads/*:refs/remotes/origin/*
   [branch "master"]
         remote = origin
   merge = refs/heads/master
[core]
repositoryformatversion=0
filemode=false
裸=假
logallrefupdates=true
符号链接=假
ignorecase=true
[远程“源”]
url=ssh://@review.quicinc.com:29418/
fetch=+refs/heads/*:refs/remotes/origin/*
[分行“主控”]
远程=原点
合并=参考/头/主

发生此错误是因为服务器内存不足。可能是因为大文件或虚拟限制

请尝试此命令,然后重试。这是我的建议


我可以看到悬挂的斑点,但那应该没问题。可能回购协议已经损坏,你可以尝试修复,以防出现问题。保留配置文件的备份

$ cd project
$ cp .git/config .git/config.backup
$ git remote remove origin
以上步骤只是再次链接您的回购

$ mv .git/config.backup .git/config
现在再次获取所有内容,不要在此处使用pull

$ git fetch
现在执行

$ git pull origin master

现在问题解决了

松散对象修剪导致问题并导致回购损坏

通过将提示还原为服务器上以前的gerrit,问题得以解决


谢谢大家的回复。

谢谢大家的快速回复。但它不适用于meDo您是否有权在服务器上运行
git fsck
,或类似的功能,若要验证远程存储库的完整性,请发布$/project/.git/config文件的o/p。服务器日志文件应包含有关失败的详细信息。@LasseVågsætherKarlsen在上面发布了git fsck输出。@Bijendra在上面发布了配置文件的o/p
$ git pull origin master