Git for windows版本2.5.3无法推送更改。

5

当我尝试推送更改时,我会收到以下错误(不是内存问题或其他已在stackoverflow上提到的问题),当我卸载最新版本并安装1.9.x版本时,错误消失了。如果您遇到相同的问题,请考虑此解决方案。

  • 致命错误:mmap失败:无错误
  • 致命错误:远程终端意外挂断
  • 致命错误:远程终端意外挂断
  • 致命错误:写入错误:坏文件描述符
  • 错误:无法将一些引用推送到

2
你可以尝试使用已安装Git for Windows 2.5.3的存档文件(意味着没有setup.exe,只需在任何您选择的文件夹中解压缩):https://github.com/git-for-windows/git/releases/download/v2.5.3.windows.1/PortableGit-2.5.3-64-bit.7z.exe - VonC
5个回答

14

git status

致命错误:mmap 失败:无效参数

我在同步 OneDrive 文件失败后遇到了这个问题。现在已经解决了。


相同,这里。我们知道这为什么起作用吗?或者我们首先为什么会出现错误? - S.Ale

6
这个特定的错误刚刚被修复了(或者至少得到了缓解),需要使用 git-for-windows 2.6.2 (Oct. 19th, 2015)。现在我们不再因为获取大型仓库而耗尽页面文件空间。(推送也适用)请参阅PR 486:更好的mmap()仿真,一个简单的git fetch将产生此错误输出:
fatal: mmap failed: No error
fatal: write error: Invalid argument

原因是我们的 mmap() 模拟有几个部分需要改进。这个拉取请求试图弥补这一差距。
这涉及到 compat/win32mmap.c,而该修复程序尚未更新 上游 (在git/git中)

1
我在Win XP上运行git版本2.8.1.windows.1,但出现以下错误:“fatal: mmap failed: Invalid argument”。我不知道原因。也许我试图跟踪太多了:2GB的数据,2000个文件,150个文件夹,最大文件大小为12MB。这需要进一步调查。 - Jonathan Elkins

3

我遇到了相同的问题,后来发现OneDrive被暂停了。如果文件是“在线”的,那么文件将自动获取,但如果OneDrive被暂停或未运行,则不会获取:

git reset --hard <hash>
fatal: mmap failed: Invalid argument

2

当我试图将整个文件夹结构推送到新的git仓库时,也遇到了类似的错误消息:"fatal: mmap failed: Invalid argument"。尽管我使用的是git版本2.8,但仍然出现了这个错误。

经过进一步调查,我发现调试问题的最佳方法是使用带有verbose选项的git add命令:

git add -A -v

那样我就能准确地看到是哪个文件导致了失败。通过使用-v,我发现git add在一个大约17MB的zip文件上失败了。所以我排除了zip文件。这些文件我不需要跟踪。

然后它又因为一个名为"user.fdb.new"的文件而再次失败,这是一个重命名的Firebird数据库文件,只有约2MB。所以我排除了整个文件夹。然后我就能完成分段了。

我不确定问题是什么,但似乎与文件类型有关,也许不仅仅是文件大小。

最终,我的Git仓库包括分布在150个文件夹中的大约1600个文件,涵盖了我认为大约2GB的内容,但生成的Git仓库只有大约24MB。我认为最大的文件大小为12MB。

我正在运行:

git version 2.8.1.windows.1 on Windows XP SP3

0

我的磁盘空间已满,我不小心尝试暂存一个大型二进制文件。删除了这个大文件后,暂存过程顺利完成。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接