Git,错误:远程解压缩失败:无法创建临时对象目录-通过创建新分支



我正试图在我的repo中创建一个新分支。

我做到了:

git branch events
git Checkout events

奏效了。所以我更改了一些文件并做了:

git Status
git add --all
git commit -m "Commit"

这很有效,但我试图推动它,但没有奏效:

git push -u origin events

这就是错误:

Enumerating objects: 9, done.                                                                                                                       
Counting objects: 100% (9/9), done.                                                                                                                 
Delta compression using up to 4 threads.                                                                                                            
Compressing objects: 100% (5/5), done.                                                                                                              
Writing objects: 100% (5/5), 716 bytes | 716.00 KiB/s, done.                                                                                        
Total 5 (delta 4), reused 0 (delta 0)                                                                                                               
error: remote unpack failed: unable to create temporary object directory                                                                            
To http://git.int.censoredlink/scm/freeb/freebrep.git                                                                                       
! [remote rejected] events -> events (unpacker error)                                                                                              
error: failed to push some refs to 'http://stsu@git.int.censoredlink/scm/freeb/freebrep.git'

我不知道为什么它不起作用。

我拥有回购的管理员权限。我审查了回购的链接,因为这是一个带有私人链接的内部回购。

此错误消息:

error: remote unpack failed: unable to create temporary object directory

表示服务器上的Git存储库(不是您的Git)空间不足,或遇到类似的服务器问题,1或安装不正确。也就是说,给定:

To: http://git.int.censoredlink/scm/freeb/freebrep.git

您必须登录到git.int.censoredlink上为HTTP流量提供服务的计算机,走到scm/freeb/freebrep.git目录,然后在那里更正安装。这很可能是权限问题:接收Git必须能够在对象区域中创建一个名为incoming-XXXXXX的目录,其中Xs由唯一标识符替换,然后在该目录中创建一个子目录pack

所有传入的对象和包文件都被放置在这些目录中,这是一种隔离过程,直到服务器端Git挂钩满足引用名称更新请求。如果推送失败,隔离目录将被简单删除。如果推送成功,隔离的对象和/或包文件将迁移(并调整精简包)到正常对象存储区域。请注意,即使隔离过程成功,迁移也可能失败;但如果这样做,您会向客户端报告一个不同的错误。(此错误也必须在服务器上更正。)

注意:推送到http://而不是https://ssh://URL是很不寻常的。检查服务器配置,查看谁将拥有由此创建的各种文件,以及web服务器将拥有什么权限。


1如果硬盘驱动器出现故障,Linux有时会将驱动器和/或其文件系统标记为只读。或者,即使您有磁盘空间,也可能会耗尽索引节点。许多不同的根本原因都会导致在客户端上观察到相同的行为。如果您是在服务器上进行检查的Linux管理员,请查找系统日志消息,并考虑dfdf -i的输出。

90%的可能性是权限问题。

  1. 登录到远程服务器
  2. 导航到freebrep.git所在的/scm/freeb
  3. 致电chown -R yourusername freebrep.git(用户名为stsu)
  4. 请重试。现在它应该允许编写对象

如果您使用root user,请先将用户更改为your git user,然后更改为init your git directory:

  1. 如果您是root用户->$[root@server~]#
  2. 更改用户->$su-用户名
  3. 初始化git repo->[username@server~]$git-init--裸git-repo.git
  4. 客户端推送->现在您可以从客户端推送:
    git remote add yourAliasName ssh://username@IP-or-HOST:sshPort/home/username/git-repo.git

注意:
我认为您已经在客户端中创建了一个public/private key,并将公钥传递给了/home/username/.ssh/authorized_keys服务器文件。否则,您必须在步骤(4)之前执行此操作。

在删除远程git存储库中的.git子目录之前,我也收到了同样的错误。

git登录帐户无法写入.git子目录。起初,我在尝试提交时遇到了权限问题,我怀疑.git子目录是在那时创建的。

因为这个错误消息,我被重定向到了这里。

错误:远程解压缩失败:无法创建临时对象目录

仅供参考:当您安装git目录只读时,也可能发生这种情况

例如x.x.x.x:/nas/git on /mnt/git type nfs (ro,.....

最近我确实遇到了这个错误。问题是用户没有足够的权限,例如git远程添加生产ssh://username@{your-ip}/var/test/test.git`确保用户名没有权限

当我尝试推送到"审查的git服务器"时,我遇到了同样的错误。问题出在服务器端。您可以等待一段时间,直到服务器恢复正常联机,或者只需联系管理员即可修复:)

对我来说,这是一个悬空的、崩溃的gitk会话:专门阻止windoze机器上的文件访问。

假设您在Mac上连接到AWS上自己的ubuntu服务器。

很可能您将以用户身份连接";ubuntu";。

如果权限不是问题(只有你),只需登录到你的ubuntu服务器,只需

] chown ubuntu:ubuntu

所有有问题的git目录。那会很好用的。

问题:-error:远程解压缩失败:无法创建临时对象目录到https://url.com/scm/som/project.git![远程拒绝]发布/项目-PROD-year_month_WeekNumber->release/project-PROD-year_month_WeekNumber(解包错误)错误:无法将某些引用推送到"https://url.com/scm/som/project.git'

解决方案:-打开gitbash goto项目根目录。

chmod 777*

然后再次尝试git-push

它对我有效

最新更新