• J
    t0004: fix timing bug · 329636b4
    Junio C Hamano 提交于
    The test created an initial commit, made .git/objects unwritable and then
    exercised various codepaths to create loose commit, tree and blob objects
    to make sure the commands notice failures from these attempts.
    
    However, the initial commit was not preceded with test_tick, which made
    its object name depend on the timestamp.  The names of all the later tree
    and blob objects the test tried to create were static.  If the initial
    commit's object name happened to begin with the same two hexdigits as the
    tree or blob objects the test later attempted to create, the fan-out
    directory in which these tree or blob would be created is already created
    when the initial commit was made, and the object creation succeeds, and
    commands being tested should not notice any failure --- in short, the test
    was bogus.
    
    This makes the fan-out directories also unwritable, and adds test_tick
    before the commit object creation to make the test repeatable.
    
    The contents of the file to create a blob from "a" to "60" is to force the
    name of the blob object to begin with "1b", which shares the fan-out
    directory with the initial commit that is created with the test.  This was
    useful when diagnosing the breakage of this test.
    Signed-off-by: NJunio C Hamano <gitster@pobox.com>
    329636b4
t0004-unwritable.sh 1.1 KB