diff -r a5168eb9b2bc -r 89b809fa6cef mercurial/dirstate.py --- a/mercurial/dirstate.py Mon Jul 21 11:27:24 2014 -0700 +++ b/mercurial/dirstate.py Tue Jul 22 23:59:30 2014 +0900 @@ -504,6 +504,14 @@ def write(self): if not self._dirty: return + + # enough 'delaywrite' prevents 'pack_dirstate' from dropping + # timestamp of each entries in dirstate, because of 'now > mtime' + delaywrite = self._ui.configint('debug', 'dirstate.delaywrite', 0) + if delaywrite: + import time # to avoid useless import + time.sleep(delaywrite) + st = self._opener("dirstate", "w", atomictemp=True) # use the modification time of the newly created temporary file as the # filesystem's notion of 'now'