# HG changeset patch # User Matt Harbison # Date 1499573943 14400 # Node ID 4a70985805c6ab0b913469574ca9957757e8b4a0 # Parent 583aa1e3658bd705bbe86a0aa4d78ba145843a0a identify: simplify the dirty check This is equivalent to the previous code, but it seems better to be explicit about what aspects of dirty are being ignored. Perhaps they shouldn't be, since the help text says 'followed by a "+" if the working directory has uncommitted changes'. Both merges and branch changes are committable, even if the files are unchanged. Additionally, this will make the `identify` command notice missing subrepo files, once subrepos are taught to look for missing files. diff -r 583aa1e3658b -r 4a70985805c6 mercurial/commands.py --- a/mercurial/commands.py Sun Jul 09 00:05:31 2017 -0400 +++ b/mercurial/commands.py Sun Jul 09 00:19:03 2017 -0400 @@ -2775,8 +2775,7 @@ taglist.extend(p.tags()) dirty = "" - if (any(repo.status()) - or any(ctx.sub(s).dirty() for s in ctx.substate)): + if ctx.dirty(missing=True, merge=False, branch=False): dirty = '+' fm.data(dirty=dirty)