• S
    Implemented tree delta compression in fast-import. · 4cabf858
    Shawn O. Pearce 提交于
    We now store for every tree entry two modes and two sha1 values;
    the base (aka "version 0") and the current/new (aka "version 1").
    When we generate a tree object we also regenerate the prior version
    object and use that as our base object for a delta.  This strategy
    saves a significant amount of memory as we can continue to use the
    atom pool for file/directory names and only increases each tree
    entry by an additional 24 bytes of memory.
    
    Branches should automatically delta against their ancestor tree,
    unless the ancestor tree is already at the delta chain limit.
    Signed-off-by: NShawn O. Pearce <spearce@spearce.org>
    4cabf858
fast-import.c 43.5 KB