On Thu, Apr 26, 2018 at 06:43:56PM +0200, Duy Nguyen wrote: > On Wed, Apr 25, 2018 at 5:18 PM, Marc Branchaud <marcnarc@xxxxxxxxxxx> wrote: > > Are we all that sure that the performance hit is that drastic? After all, > > we've just done write_entry(). Calling utime() at that point should just > > hit the filesystem cache. > I have a feeling this has "this is linux" assumption. Anybody knows > how freebsd, mac os x and windows behave? I don't know sorry. futimens might be better here if it can be used before the fd is closed. > > * In a "file checkout" ("git checkout -- path/to/file"), $1 and $2 are > > identical so the above loop does nothing. Offhand I'm not even sure how a > > hook might get the right files in this case. > Would a hook that gives you the list of updated files (in the exact > same order that git updates) help? Yes, that, along with the target revision I think would allow most or all of the desired behaviors mentioned in this thread *. It also needs to fire in cases like 'git reset --hard $REV'. * For this case, I just need the mtimes to be consistent within a single checkout, I don't need them to have specific values. -- Robin Hugh Johnson Gentoo Linux: Dev, Infra Lead, Foundation Treasurer E-Mail : robbat2@xxxxxxxxxx GnuPG FP : 11ACBA4F 4778E3F6 E4EDF38E B27B944E 34884E85 GnuPG FP : 7D0B3CEB E9B85B1F 825BCECF EE05E6F6 A48F6136