diff hgext/largefiles/overrides.py @ 33364:bf2daeddd42b

subrepo: consider the parent repo dirty when a file is missing This simply passes the 'missing' argument down from the context of the parent repo, so the same rules apply. subrepo.bailifchanged() is hardcoded to care about missing files, because cmdutil.bailifchanged() is too. In the end, it looks like this addresses inconsistencies with 'archive', 'identify', blackbox logs, 'merge', and 'update --check'. I wasn't sure how to implement this in git, so that's left for someone more familiar with it.
author Matt Harbison <matt_harbison@yahoo.com>
date Sun, 09 Jul 2017 02:55:46 -0400
parents 0ce2cbebd749
children 0407a51b9d8c
line wrap: on
line diff
--- a/hgext/largefiles/overrides.py	Sun Jul 09 02:46:03 2017 -0400
+++ b/hgext/largefiles/overrides.py	Sun Jul 09 02:55:46 2017 -0400
@@ -289,10 +289,10 @@
     finally:
         repo.lfstatus = False
 
-def overridedirty(orig, repo, ignoreupdate=False):
+def overridedirty(orig, repo, ignoreupdate=False, missing=False):
     try:
         repo._repo.lfstatus = True
-        return orig(repo, ignoreupdate)
+        return orig(repo, ignoreupdate=ignoreupdate, missing=missing)
     finally:
         repo._repo.lfstatus = False