• Show log

    Commit

  • Hash : d7fea1e1
    Author : Edward Thomson
    Date : 2018-02-18T16:10:33

    checkout: take mode into account when comparing index to baseline
    
    When checking out a file, we determine whether the baseline (what we
    expect to be in the working directory) actually matches the contents
    of the working directory.  This is safe behavior to prevent us from
    overwriting changes in the working directory.
    
    We look at the index to optimize this test: if we know that the index
    matches the working directory, then we can simply look at the index
    data compared to the baseline.
    
    We have historically compared the baseline to the index entry by oid.
    However, we must also compare the mode of the two items to ensure that
    they are identical.  Otherwise, we will refuse to update the working
    directory for a mode change.