gpt4 book ai didi

GitLab SSH 推送失败内存 malloc 失败错误

转载 作者:行者123 更新时间:2023-12-02 14:29:07 25 4
gpt4 key购买 nike

我正在尝试通过 ssh 将 1.4GB 的大型 .sql 文件推送到 gitlab 项目。但是推送失败并出现以下错误:
Enumerating objects: 3, done.
Counting objects: 100% (3/3), done.
remote: fatal: Out of memory, malloc failed (tried to allocate 1452837977 bytes)
fatal: sha1 file '<stdout>' write error: Broken pipe
error: remote unpack failed: unpack-objects abnormal exit

这是我的 gitconfig 文件的内容

[core]
repositoryformatversion = 0
filemode = false
bare = false
logallrefupdates = true
symlinks = false
ignorecase = true
[remote "origin"]
url = my ssh url
fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
remote = origin
merge = refs/heads/master

最佳答案

首先,Git 做 不是 允许文件大于 100 MB。所以,千兆字节真的没有机会(或者增加最大尺寸是不好的)!

Git 不允许这样做是有原因的。假设您有一个 1 GB 的文件。 git 中的每次提交都不会保存差异,而是获取该文件的整个快照。因此,最终在 3 次提交之后,您的 repo 的大小将达到 3 GB,它只会占用您的空间并导致克隆、获取和所有内容的速度变慢。

如果你使用 git-lfs,指向实际 LFS 跟踪文件的指针实际上已保存 在您的存储库中。 3 GB 数据仍然存在于您的远程存储库中(作为 BLOB),但并非所有 3 GB 数据都保存在您的本地存储库中,根据您的提交哈希,git-lfs 只会延迟下载您当前使用的版本而不是拥有所有三个版本,因此无论您正在处理的提交如何,您都将只有 1 GB 的文件。

关于GitLab SSH 推送失败内存 malloc 失败错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54828904/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com