相关疑难解决方法(0)

Windows上的Git,"内存不足 - malloc失败"

遇到了存储库的问题,并尝试了几乎所有可能的配置设置,例如.pack.WindowMemory等等

我相信有人已经检查了一个大文件到远程存储库,现在每次我尝试拉动或推送它时,GIT会尝试打包它并耗尽内存:

Auto packing the repository for optimum performance. You may also
run "git gc" manually. See "git help gc" for more information.
Counting objects: 6279, done.
Compressing objects: 100% (6147/6147), done.
fatal: Out of memory, malloc failed (tried to allocate 1549040327 bytes)
error: failed to run repack
Run Code Online (Sandbox Code Playgroud)

尝试过各种选项的git gc&git repack,但仍然返回相同的错误.

几乎放弃了,即将创建一个新的回购,但我想先问一下:)

windows git

66
推荐指数
3
解决办法
7万
查看次数

Git gc使用过多的内存,无法完成

最终更新和修复:这里的解决方案结果是两件事:使用Windows Git而不是Grag Borland 建议的 Cygwin Git ,以及Git配置设置pack.threads = 1gc.aggressiveWindow = 150.

我有一个大型的本地Git存储库,一个git svn cloneSVN存储库,大约有40,000次提交.我正试图git gc在这个存储库上运行,并且无处可去:

$ git gc --auto
Auto packing the repository for optimum performance. You may also
run "git gc" manually. See "git help gc" for more information.
Counting objects: 25966, done.
Compressing objects: 100% (25249/25249), done.
fatal: Out of memory, malloc failed (tried to allocate 426523986 bytes)
error: failed to run repack
Run Code Online (Sandbox Code Playgroud)

我正在使用4GB RAM的64位双核Win7机器上运行Cygwin中的Git 1.7.5.1.该.git目录目前略高于6.1GB.

我已经尝试过运行 …

git git-svn git-gc

35
推荐指数
3
解决办法
1万
查看次数

用Git备份数据库 - 一个好主意?

我看到它将PostgeSQL数据库转储到一个大的SQL文件然后提交并推送到远程Git仓库的方式可能是一个了不起的备份解决方案:我获得了所有版本的历史记录,哈希,安全传输,单向(真的很难)通过推送,高效存储(假设没有二进制文件)并且没有新图像破坏备份的可能性(这是rsync的风险)来搞乱和删除数据.

有没有人使用过这种方法,尤其是pg,可以分享他/她的经验吗?陷阱?

git postgresql backup

12
推荐指数
3
解决办法
3297
查看次数

Git gc使用了大量内存,即使我限制它

我在共享主机(uberspace.de)上运行git并在执行git push或运行时达到内存限制git gc.他们报告的内存消耗大约为1500 MB.

所以我遵循了建议

/sf/answers/613302511/

它似乎工作一次,但经过大量的提交它不再有用,内存消耗再次大约1500MB并且git pack进程被杀死.

我提交了一个120 MB的SQL转储,只有很少的更改(每次大约5行) - 所以打包的存储库只有大约150 MB,但解压缩大约3 GB(我达到了bitbucket的限制).

我看到哪个pmap打开了很多包对象 - 它是否会增加高内存?怎么限制?

最后,我得到了"装箱物品死于信号15"和来自主机的邮件,我的过程被杀死了.

sh-4.1$ git config --list|grep pack
pack.windowmemory=25m
pack.packsizelimit=25m
pack.threads=1
pack.deltecachesize=25m
sh-4.1$ git gc
Counting objects: 2586, done.
^Zmpressing objects:  15% (163/1085)   
[1]+  Stopped(SIGTSTP)        git gc
sh-4.1$ bg
[1] git gc &
sh-4.1$ pmap 14190
14190:   git pack-objects --keep-true-parents --honor-pack-keep --non-empty --all --reflog --indexed-objects --unpack-unreachable=2.weeks.ago --local --delta-base-offset .git/objects/pack/.tmp-14187-pack
0000000000400000   1848K r-x--  /home/foo/.toast/pkg/git/v2.11.1/1/root/libexec/git-core/git
00000000007ce000     36K rw---  /home/foo/.toast/pkg/git/v2.11.1/1/root/libexec/git-core/git
00000000007d7000    280K rw---    [ …
Run Code Online (Sandbox Code Playgroud)

memory git

6
推荐指数
1
解决办法
945
查看次数

对于一个巨大的仓库来说 git Push 非常慢

我遇到了与 - git Push 对于分支来说非常慢的问题 ,但那里的答案不适合我的情况。

我正在针对一个拥有非常大的存储库的企业 GitHub 进行工作。我的流程如下:

1)从master拉取

2)创建新分支

3)承诺

4) 推送分支以创建拉取请求。

当将分支推送到 (4) 时,它想要写入超过 1,000,000 个对象,当我所做的提交仅更改 1 行时,这大约需要 3GB。

如果我转到 GitHub UI 并从 UI 创建一个与 (2) 中名称相同的分支,然后推送到该分支,则推送时间不到一秒。不用说,master 和我的分支之间的更改非常小(没有添加或删除大文件)。

我该怎么做才能让 Git 只推送相关数据而不是整个存储库?

Windows 版本 2.17.0 上的 Git

git github

5
推荐指数
2
解决办法
9209
查看次数

标签 统计

git ×5

backup ×1

git-gc ×1

git-svn ×1

github ×1

memory ×1

postgresql ×1

windows ×1