[PATCH 1 of 2] update: check wc.dirty() before setting overwrite=True
Augie Fackler
durin42 at gmail.com
Fri Jun 17 20:25:52 UTC 2011
# HG changeset patch
# User Augie Fackler <durin42 at gmail.com>
# Date 1308342062 18000
# Node ID fa18b3700dafa530544456e544c3d9b41749ec78
# Parent ba3c36cea66e7a9cc0bb274b7f7b73ad65212df7
update: check wc.dirty() before setting overwrite=True
merge.update() was missing a few dirtiness checks from workingcontext,
including subrepo cleanliness checks. Using wc.dirty() instead of
one-off checks for various forms of dirtiness will be significantly
safer.
diff --git a/mercurial/merge.py b/mercurial/merge.py
--- a/mercurial/merge.py
+++ b/mercurial/merge.py
@@ -525,7 +525,7 @@
elif not overwrite:
if pa == p1 or pa == p2: # linear
pass # all good
- elif wc.files() or wc.deleted():
+ elif wc.dirty(missing=True):
raise util.Abort(_("crosses branches (merge branches or use"
" --clean to discard changes)"))
elif onode is None:
More information about the Mercurial-devel
mailing list