Mercurial > public > mercurial-scm > hg
comparison mercurial/merge.py @ 30060:a145161debed
merge: use labels in subrepo merge
This is the last place that doesn't respect conflict labels in merge output.
Teach subrepos to use subrepo merge output too.
author | Simon Farnsworth <simonfar@fb.com> |
---|---|
date | Sat, 08 Oct 2016 01:25:28 -0700 |
parents | 6f447b9ec263 |
children | 98d3d8108db0 |
comparison
equal
deleted
inserted
replaced
30059:6ffb7e0249f4 | 30060:a145161debed |
---|---|
1148 util.unlinkpath(repo.wjoin(f)) | 1148 util.unlinkpath(repo.wjoin(f)) |
1149 | 1149 |
1150 numupdates = sum(len(l) for m, l in actions.items() if m != 'k') | 1150 numupdates = sum(len(l) for m, l in actions.items() if m != 'k') |
1151 | 1151 |
1152 if [a for a in actions['r'] if a[0] == '.hgsubstate']: | 1152 if [a for a in actions['r'] if a[0] == '.hgsubstate']: |
1153 subrepo.submerge(repo, wctx, mctx, wctx, overwrite) | 1153 subrepo.submerge(repo, wctx, mctx, wctx, overwrite, labels) |
1154 | 1154 |
1155 # remove in parallel (must come first) | 1155 # remove in parallel (must come first) |
1156 z = 0 | 1156 z = 0 |
1157 prog = worker.worker(repo.ui, 0.001, batchremove, (repo,), actions['r']) | 1157 prog = worker.worker(repo.ui, 0.001, batchremove, (repo,), actions['r']) |
1158 for i, item in prog: | 1158 for i, item in prog: |
1166 z += i | 1166 z += i |
1167 progress(_updating, z, item=item, total=numupdates, unit=_files) | 1167 progress(_updating, z, item=item, total=numupdates, unit=_files) |
1168 updated = len(actions['g']) | 1168 updated = len(actions['g']) |
1169 | 1169 |
1170 if [a for a in actions['g'] if a[0] == '.hgsubstate']: | 1170 if [a for a in actions['g'] if a[0] == '.hgsubstate']: |
1171 subrepo.submerge(repo, wctx, mctx, wctx, overwrite) | 1171 subrepo.submerge(repo, wctx, mctx, wctx, overwrite, labels) |
1172 | 1172 |
1173 # forget (manifest only, just log it) (must come first) | 1173 # forget (manifest only, just log it) (must come first) |
1174 for f, args, msg in actions['f']: | 1174 for f, args, msg in actions['f']: |
1175 repo.ui.debug(" %s: %s -> f\n" % (f, msg)) | 1175 repo.ui.debug(" %s: %s -> f\n" % (f, msg)) |
1176 z += 1 | 1176 z += 1 |
1251 repo.ui.debug(" %s: %s -> m (premerge)\n" % (f, msg)) | 1251 repo.ui.debug(" %s: %s -> m (premerge)\n" % (f, msg)) |
1252 z += 1 | 1252 z += 1 |
1253 progress(_updating, z, item=f, total=numupdates, unit=_files) | 1253 progress(_updating, z, item=f, total=numupdates, unit=_files) |
1254 if f == '.hgsubstate': # subrepo states need updating | 1254 if f == '.hgsubstate': # subrepo states need updating |
1255 subrepo.submerge(repo, wctx, mctx, wctx.ancestor(mctx), | 1255 subrepo.submerge(repo, wctx, mctx, wctx.ancestor(mctx), |
1256 overwrite) | 1256 overwrite, labels) |
1257 continue | 1257 continue |
1258 audit(f) | 1258 audit(f) |
1259 complete, r = ms.preresolve(f, wctx) | 1259 complete, r = ms.preresolve(f, wctx) |
1260 if not complete: | 1260 if not complete: |
1261 numupdates += 1 | 1261 numupdates += 1 |