diff -r 61ed30e82b27 -r 20e95c245bc3 mercurial/hg.py --- a/mercurial/hg.py Fri Jul 22 19:46:02 2005 -0800 +++ b/mercurial/hg.py Sat Jul 23 10:00:56 2005 -0500 @@ -1506,7 +1506,9 @@ m, o, flag = merge[f] self.merge3(f, m, o) util.set_exec(self.wjoin(f), flag) - if moddirstate: + if moddirstate and mode == 'm': + # only update dirstate on branch merge, otherwise we + # could mark files with changes as unchanged self.dirstate.update([f], mode) remove.sort()