ballshapesdsd
V2EX  ›  问与答

为什么 git add 这么慢?

  •  
  •   ballshapesdsd · Aug 20, 2018 · 4041 views
    This topic created in 3006 days ago, the information mentioned may be changed or developed.
    add 大概 10000 个二进制文件,总共 500M 大小,花了 20 分钟。

    研究了一下 git 的原理,发现好像也就是算了 sha1 值,并且用 zlib 压缩了一下,我写了个脚本用 python 按这样的流程处理了一下,发现只要 50 多秒。

    那么问题出在哪?我应该怎么提高 git add 的效率?有没有熟悉 git 的大手子指教一下
    6 replies  •  2018-08-21 21:26:14 +08:00
    ballshapesdsd
    ballshapesdsd
    OP
    Aug 20, 2018
    1
    补充一下,是初次添加 10000 个文件,并不是修改
    ballshapesdsd
    ballshapesdsd
    OP
    Aug 20, 2018
    2
    byteli
    byteli
    Aug 20, 2018 via Android
    3
    没研究过 git 原理,猜测是否和是二进制文件有关系。git 对于二进制是否不够友好
    Lfinesse
    Lfinesse
    Aug 20, 2018
    4
    试试 Git LFS

    不然在这些二进制文件上操作几波,别人再 clone 没个几小时弄不下来
    ballshapesdsd
    ballshapesdsd
    OP
    Aug 20, 2018
    5
    @byteli #3

    @Lfinesse #4 已经试过了 git lfs,时间比不加 lfs 还慢,大概要 30 分钟。我的理解是 lfs 的目的主要是为了节省 clone 的时间和本地的空间,还不清楚是否会在其他方面提高操作二进制文件的效率。
    ballshapesdsd
    ballshapesdsd
    OP
    Aug 21, 2018
    6
    解决了,问题好像出在 windows 上,用 linux 就很快大约 20s,给后来采坑的人一点提示。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2476 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 11:02 · PVG 19:02 · LAX 03:02 · JFK 06:02
    ♥ Do have faith in what you're doing.