• N
    upload-pack: delegate rev walking in shallow fetch to pack-objects · cdab4858
    Nguyễn Thái Ngọc Duy 提交于
    upload-pack has a special revision walking code for shallow
    recipients. It works almost like the similar code in pack-objects
    except:
    
    1. in upload-pack, graft points could be added for deepening;
    
    2. also when the repository is deepened, the shallow point will be
       moved further away from the tip, but the old shallow point will be
       marked as edge to produce more efficient packs. See 6523078b (make
       shallow repository deepening more network efficient - 2009-09-03).
    
    Pass the file to pack-objects via --shallow-file. This will override
    $GIT_DIR/shallow and give pack-objects the exact repository shape
    that upload-pack has.
    
    mark edge commits by revision command arguments. Even if old shallow
    points are passed as "--not" revisions as in this patch, they will not
    be picked up by mark_edges_uninteresting() because this function looks
    up to parents for edges, while in this case the edge is the children,
    in the opposite direction. This will be fixed in an later patch when
    all given uninteresting commits are marked as edges.
    Signed-off-by: NNguyễn Thái Ngọc Duy <pclouds@gmail.com>
    Signed-off-by: NJunio C Hamano <gitster@pobox.com>
    cdab4858
t5530-upload-pack-error.sh 2.1 KB