V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
ballshapesdsd
V2EX  ›  问与答

为什么 git add 这么慢?

  •  
  •   ballshapesdsd · Aug 20, 2018 · 3565 views
    This topic created in 2810 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
        1
    ballshapesdsd  
    OP
       Aug 20, 2018
    补充一下,是初次添加 10000 个文件,并不是修改
    ballshapesdsd
        2
    ballshapesdsd  
    OP
       Aug 20, 2018
    byteli
        3
    byteli  
       Aug 20, 2018 via Android
    没研究过 git 原理,猜测是否和是二进制文件有关系。git 对于二进制是否不够友好
    Lfinesse
        4
    Lfinesse  
       Aug 20, 2018
    试试 Git LFS

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

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