Hi Dscho, On Wed, Jan 16, 2019 at 5:37 AM Johannes Schindelin via GitGitGadget <gitgitgadget@xxxxxxxxx> wrote: > > Unfortunately, Travis decided to change some things under the hood that > affect the Windows build. As a consequence, master has not been tested in > quite a while, even if the test runs pretended that it had been tested :-( > > So imagine my surprise when master simply would refuse to pass the test > suite cleanly outside Travis, always failing at t6042, despite the fact that > Travis passed. > > It turns out that two files are written too quickly in succession, running > into the issue where Git for Windows chooses not to populate the inode and > device numbers in the stat data (this is a noticeable performance > optimization). As a consequence, Git thinks the file is unchanged, and fails > to pick up a modification. And no, we cannot simply undo the performance > optimization, it would make things prohibitively slow in particular in large > worktrees, and it is not like the bug is likely to be hit in reality: for > Git to be fooled into thinking that a file is unchanged, it has to be > written with the same file size, and within a 100ns time bucket (it is > pretty improbable that there is any real-world scenario that would run into > that, except of course our regression test suite). > > This patch works around this issue by forcing Git to recognize the new file > versions as new files (which they really are: the patch simply replaces > > git mv <old> <new> && mv <file> <new> && git add <new>` > > by > > git rm <old> && mv <file> <new> && git add <new>` > > which is not shorter, but even a performance improvement (an unnoticeable > one, of course). Everything sounds good up to this final sentence. I'm wondering if I'm misunderstanding or if there were some simple editing errors; in particular, I'm not sure what "even" means here (should it be left out?), and it seems like you meant "noticeable" rather than "unnoticeable" -- is that correct?