Show More
@@ -1201,7 +1201,7 b' def add(ui, repo, match, dryrun, listsub' | |||||
1201 | def duplicatecopies(repo, rev, p1, p2): |
|
1201 | def duplicatecopies(repo, rev, p1, p2): | |
1202 | "Reproduce copies found in the source revision in the dirstate for grafts" |
|
1202 | "Reproduce copies found in the source revision in the dirstate for grafts" | |
1203 | # Here we simulate the copies and renames in the source changeset |
|
1203 | # Here we simulate the copies and renames in the source changeset | |
1204 |
cop, diver = copies.copies(repo, repo[rev], repo[p1], repo[p2] |
|
1204 | cop, diver = copies.mergecopies(repo, repo[rev], repo[p1], repo[p2]) | |
1205 | m1 = repo[rev].manifest() |
|
1205 | m1 = repo[rev].manifest() | |
1206 | m2 = repo[p1].manifest() |
|
1206 | m2 = repo[p1].manifest() | |
1207 | for k, v in cop.iteritems(): |
|
1207 | for k, v in cop.iteritems(): |
@@ -5206,14 +5206,13 b' def status(ui, repo, *pats, **opts):' | |||||
5206 | changestates = zip(states, 'MAR!?IC', stat) |
|
5206 | changestates = zip(states, 'MAR!?IC', stat) | |
5207 |
|
5207 | |||
5208 | if (opts.get('all') or opts.get('copies')) and not opts.get('no_status'): |
|
5208 | if (opts.get('all') or opts.get('copies')) and not opts.get('no_status'): | |
5209 | ctxn = repo[nullid] |
|
|||
5210 | ctx1 = repo[node1] |
|
5209 | ctx1 = repo[node1] | |
5211 | ctx2 = repo[node2] |
|
5210 | ctx2 = repo[node2] | |
5212 | added = stat[1] |
|
5211 | added = stat[1] | |
5213 | if node2 is None: |
|
5212 | if node2 is None: | |
5214 | added = stat[0] + stat[1] # merged? |
|
5213 | added = stat[0] + stat[1] # merged? | |
5215 |
|
5214 | |||
5216 |
for k, v in copies.copies( |
|
5215 | for k, v in copies.pathcopies(ctx1, ctx2).iteritems(): | |
5217 | if k in added: |
|
5216 | if k in added: | |
5218 | copy[k] = v |
|
5217 | copy[k] = v | |
5219 | elif v in added: |
|
5218 | elif v in added: |
@@ -84,7 +84,10 b' def _findlimit(repo, a, b):' | |||||
84 | return None |
|
84 | return None | |
85 | return limit |
|
85 | return limit | |
86 |
|
86 | |||
87 | def copies(repo, c1, c2, ca, checkdirs=False): |
|
87 | def pathcopies(c1, c2): | |
|
88 | return mergecopies(c1._repo, c1, c2, c1._repo["null"], False)[0] | |||
|
89 | ||||
|
90 | def mergecopies(repo, c1, c2, ca, checkdirs=True): | |||
88 | """ |
|
91 | """ | |
89 | Find moves and copies between context c1 and c2 |
|
92 | Find moves and copies between context c1 and c2 | |
90 | """ |
|
93 | """ |
@@ -183,7 +183,7 b' def manifestmerge(repo, p1, p2, pa, over' | |||||
183 | pa = p1.p1() |
|
183 | pa = p1.p1() | |
184 | elif pa and repo.ui.configbool("merge", "followcopies", True): |
|
184 | elif pa and repo.ui.configbool("merge", "followcopies", True): | |
185 | dirs = repo.ui.configbool("merge", "followdirs", True) |
|
185 | dirs = repo.ui.configbool("merge", "followdirs", True) | |
186 | copy, diverge = copies.copies(repo, p1, p2, pa, dirs) |
|
186 | copy, diverge = copies.mergecopies(repo, p1, p2, pa, dirs) | |
187 | for of, fl in diverge.iteritems(): |
|
187 | for of, fl in diverge.iteritems(): | |
188 | act("divergent renames", "dr", of, fl) |
|
188 | act("divergent renames", "dr", of, fl) | |
189 |
|
189 |
@@ -1600,7 +1600,7 b' def diff(repo, node1=None, node2=None, m' | |||||
1600 |
|
1600 | |||
1601 | copy = {} |
|
1601 | copy = {} | |
1602 | if opts.git or opts.upgrade: |
|
1602 | if opts.git or opts.upgrade: | |
1603 |
copy = copies.copies( |
|
1603 | copy = copies.pathcopies(ctx1, ctx2) | |
1604 |
|
1604 | |||
1605 | difffn = lambda opts, losedata: trydiff(repo, revs, ctx1, ctx2, |
|
1605 | difffn = lambda opts, losedata: trydiff(repo, revs, ctx1, ctx2, | |
1606 | modified, added, removed, copy, getfilectx, opts, losedata, prefix) |
|
1606 | modified, added, removed, copy, getfilectx, opts, losedata, prefix) |
General Comments 0
You need to be logged in to leave comments.
Login now