[PATCH 2 of 2 v6] update: enable the issue4028 fix also for update
Gábor Stefanik
gabor.stefanik at nng.com
Thu Aug 25 20:32:49 UTC 2016
# HG changeset patch
# User Gábor Stefanik <gabor.stefanik at nng.com>
# Date 1472155346 -7200
# Thu Aug 25 22:02:26 2016 +0200
# Node ID d8e245dfe7f1bba4c0b6324e26d43aaae82e3df4
# Parent a887e7516d5b37c0b55202fa1ec9db6909a03ce0
update: enable the issue4028 fix also for update
v2: don't do unnecessary copy tracing for updates with clean working copy
v3: adjust tests for changes caused by v7 of the main patch
diff --git a/mercurial/merge.py b/mercurial/merge.py
--- a/mercurial/merge.py
+++ b/mercurial/merge.py
@@ -1514,15 +1514,16 @@
pas = [p1]
# deprecated config: merge.followcopies
- followcopies = False
+ followcopies = repo.ui.configbool('merge', 'followcopies', True)
if overwrite:
pas = [wc]
+ followcopies = False
elif pas == [p2]: # backwards
- pas = [wc.p1()]
- elif not branchmerge and not wc.dirty(missing=True):
- pass
- elif pas[0] and repo.ui.configbool('merge', 'followcopies', True):
- followcopies = True
+ pas = [p1]
+ elif not pas[0]:
+ followcopies = False
+ if not branchmerge and not wc.dirty(missing=True):
+ followcopies = False
### calculate phase
actionbyfile, diverge, renamedelete = calculateupdates(
diff --git a/tests/test-merge-local.t b/tests/test-merge-local.t
--- a/tests/test-merge-local.t
+++ b/tests/test-merge-local.t
@@ -66,7 +66,7 @@
merging zzz1_merge_ok
merging zzz2_merge_bad
warning: conflicts while merging zzz2_merge_bad! (edit, then use 'hg resolve --mark')
- 2 files updated, 1 files merged, 3 files removed, 1 files unresolved
+ 2 files updated, 1 files merged, 2 files removed, 1 files unresolved
use 'hg resolve' to retry unresolved file merges
[1]
@@ -104,7 +104,7 @@
merging zzz1_merge_ok
merging zzz2_merge_bad
warning: conflicts while merging zzz2_merge_bad! (edit, then use 'hg resolve --mark')
- 2 files updated, 1 files merged, 3 files removed, 1 files unresolved
+ 2 files updated, 1 files merged, 2 files removed, 1 files unresolved
use 'hg resolve' to retry unresolved file merges
[1]
diff --git a/tests/test-mq-subrepo.t b/tests/test-mq-subrepo.t
--- a/tests/test-mq-subrepo.t
+++ b/tests/test-mq-subrepo.t
@@ -304,6 +304,7 @@
record this change to '.hgsub'? [Ynesfdaq?] y
warning: subrepo spec file '.hgsub' not found
+ warning: subrepo spec file '.hgsub' not found
abort: uncommitted changes in subrepository 'sub'
[255]
% update substate when adding .hgsub w/clean updated subrepo
@@ -319,6 +320,7 @@
record this change to '.hgsub'? [Ynesfdaq?] y
warning: subrepo spec file '.hgsub' not found
+ warning: subrepo spec file '.hgsub' not found
path sub
source sub
revision b2fdb12cd82b021c3b7053d67802e77b6eeaee31
diff --git a/tests/test-up-local-change.t b/tests/test-up-local-change.t
--- a/tests/test-up-local-change.t
+++ b/tests/test-up-local-change.t
@@ -67,13 +67,18 @@
summary: 2
$ hg --debug up 0
+ starting 4 threads for background file closing (?)
+ searching for copies back to rev 0
+ computing unmatched files in rotated DAG
+ computing unmatched files in unrotated DAG
+ unmatched files in local:
+ b
resolving manifests
branchmerge: False, force: False, partial: False
ancestor: 1e71731e6fbb, local: 1e71731e6fbb+, remote: c19d34741b0a
preserving a for resolve of a
b: other deleted -> r
removing b
- starting 4 threads for background file closing (?)
a: versions differ -> m (premerge)
picked tool 'true' for a (binary False symlink False changedelete False)
merging a
More information about the Mercurial-devel
mailing list