Git只是部分添加了巨大的二进制文件

问题描述 投票:2回答:1

我想使用Git进行数据存储,这将由自动工具使用(因此速度并不重要)。但是,当我尝试向git添加一个巨大的二进制文件时(在我的情况下它是一个大小为24.2GB的zip文件),它只是部分地完成。

我的过程:

  1. 准备带有2个巨大二进制文件的文件夹,仅供测试;
  2. 调用git init来初始化git项目;
  3. git add -A -v -f将所有文件添加到阶段(日志显示,添加两个文件,没有错误或警告);
  4. 检查.git文件夹,它的大小只有41.6 MB,看起来太小了,但让我们继续;
  5. git commit -m "initial commit"进行提交(日志显示2个文件已更改,.git文件夹的大小仍为41.6 MB);
  6. 删除了一个媒体;
  7. git reset --hard HEAD - 只获得了222 MB的二进制文件。

Git版本:2.13.2.windows.1

系统:Windows Server 2016 Standard x64

Git具有所有默认配置

可能是什么问题,是否有可能在不切换到git LFS或其他版本控制系统的情况下修复它?

git version-control
1个回答
0
投票

我想使用Git进行数据存储,这将由自动工具使用(因此速度并不重要)。

无论速度是否重要,Git都不是一个数据库或通用文件系统,试图像使用它一样让人失望。这是一个很好的例子,你试图在通用文件系统中做一些完全合理的事情,这在你的Git构建中显然已经被打破了。

处理非常大的文件是一系列相当脆弱的操作,这些操作容易退化并且经常被忽视,因为没有人检查多GB文件,因为它处理它们很糟糕。

我猜不出你会发现什么其他问题,但我怀疑会有一些问题。 (特别是如果您尝试将其推送到托管服务提供商。)

您没有在问题中提出问题,它更像是一个错误报告。确实这就是它 - 这是一个意想不到的错误 - 你应该在Git for Windows问题跟踪器上报告它。

© www.soinside.com 2019 - 2024. All rights reserved.