Show More
@@ -319,7 +319,7 b' def override_manifestmerge(origfn, repo,' | |||||
319 | processed.append((standin, "g", p2.flags(standin))) |
|
319 | processed.append((standin, "g", p2.flags(standin))) | |
320 | else: |
|
320 | else: | |
321 | processed.append((standin, "r")) |
|
321 | processed.append((standin, "r")) | |
322 |
elif m == " |
|
322 | elif m == "g" and lfutil.standin(f) in p1 and f in p2: | |
323 | # Case 2: largefile in the working copy, normal file in |
|
323 | # Case 2: largefile in the working copy, normal file in | |
324 | # the second parent |
|
324 | # the second parent | |
325 | standin = lfutil.standin(f) |
|
325 | standin = lfutil.standin(f) |
@@ -698,9 +698,6 b' class workingctx(changectx):' | |||||
698 | def _manifest(self): |
|
698 | def _manifest(self): | |
699 | """generate a manifest corresponding to the working directory""" |
|
699 | """generate a manifest corresponding to the working directory""" | |
700 |
|
700 | |||
701 | if self._unknown is None: |
|
|||
702 | self.status(unknown=True) |
|
|||
703 |
|
||||
704 | man = self._parents[0].manifest().copy() |
|
701 | man = self._parents[0].manifest().copy() | |
705 | if len(self._parents) > 1: |
|
702 | if len(self._parents) > 1: | |
706 | man2 = self.p2().manifest() |
|
703 | man2 = self.p2().manifest() | |
@@ -714,8 +711,7 b' class workingctx(changectx):' | |||||
714 | copied = self._repo.dirstate.copies() |
|
711 | copied = self._repo.dirstate.copies() | |
715 | ff = self._flagfunc |
|
712 | ff = self._flagfunc | |
716 | modified, added, removed, deleted = self._status |
|
713 | modified, added, removed, deleted = self._status | |
717 | unknown = self._unknown |
|
714 | for i, l in (("a", added), ("m", modified)): | |
718 | for i, l in (("a", added), ("m", modified), ("u", unknown)): |
|
|||
719 | for f in l: |
|
715 | for f in l: | |
720 | orig = copied.get(f, f) |
|
716 | orig = copied.get(f, f) | |
721 | man[f] = getman(orig).get(orig, nullid) + i |
|
717 | man[f] = getman(orig).get(orig, nullid) + i |
@@ -245,7 +245,7 b' def manifestmerge(repo, p1, p2, pa, over' | |||||
245 | act("prompt keep", "a", f) |
|
245 | act("prompt keep", "a", f) | |
246 | elif n[20:] == "a": # added, no remote |
|
246 | elif n[20:] == "a": # added, no remote | |
247 | act("remote deleted", "f", f) |
|
247 | act("remote deleted", "f", f) | |
248 |
el |
|
248 | else: | |
249 | act("other deleted", "r", f) |
|
249 | act("other deleted", "r", f) | |
250 |
|
250 | |||
251 | for f, n in m2.iteritems(): |
|
251 | for f, n in m2.iteritems(): | |
@@ -265,7 +265,13 b' def manifestmerge(repo, p1, p2, pa, over' | |||||
265 | act("remote moved to " + f, "m", |
|
265 | act("remote moved to " + f, "m", | |
266 | f2, f, f, fmerge(f2, f, f2), True) |
|
266 | f2, f, f, fmerge(f2, f, f2), True) | |
267 | elif f not in ma: |
|
267 | elif f not in ma: | |
268 | act("remote created", "g", f, m2.flags(f)) |
|
268 | if (not overwrite | |
|
269 | and _checkunknownfile(repo, p1, p2, f)): | |||
|
270 | rflags = fmerge(f, f, f) | |||
|
271 | act("remote differs from untracked local", | |||
|
272 | "m", f, f, f, rflags, False) | |||
|
273 | else: | |||
|
274 | act("remote created", "g", f, m2.flags(f)) | |||
269 | elif n != ma[f]: |
|
275 | elif n != ma[f]: | |
270 | if repo.ui.promptchoice( |
|
276 | if repo.ui.promptchoice( | |
271 | _("remote changed %s which local deleted\n" |
|
277 | _("remote changed %s which local deleted\n" | |
@@ -559,7 +565,6 b' def update(repo, node, branchmerge, forc' | |||||
559 |
|
565 | |||
560 | ### calculate phase |
|
566 | ### calculate phase | |
561 | action = [] |
|
567 | action = [] | |
562 | wc.status(unknown=True) # prime cache |
|
|||
563 | folding = not util.checkcase(repo.path) |
|
568 | folding = not util.checkcase(repo.path) | |
564 | if not force: |
|
569 | if not force: | |
565 | _checkunknown(repo, wc, p2) |
|
570 | _checkunknown(repo, wc, p2) |
@@ -114,7 +114,6 b' Graft out of order, skipping a merge and' | |||||
114 | grafting revision 1 |
|
114 | grafting revision 1 | |
115 | searching for copies back to rev 1 |
|
115 | searching for copies back to rev 1 | |
116 | unmatched files in local: |
|
116 | unmatched files in local: | |
117 | a.orig |
|
|||
118 | b |
|
117 | b | |
119 | all copies found (* = to merge, ! = divergent): |
|
118 | all copies found (* = to merge, ! = divergent): | |
120 | b -> a * |
|
119 | b -> a * | |
@@ -130,8 +129,6 b' Graft out of order, skipping a merge and' | |||||
130 | b: copy a:b789fdd96dc2f3bd229c1dd8eedf0fc60e2b68e3 |
|
129 | b: copy a:b789fdd96dc2f3bd229c1dd8eedf0fc60e2b68e3 | |
131 | grafting revision 5 |
|
130 | grafting revision 5 | |
132 | searching for copies back to rev 1 |
|
131 | searching for copies back to rev 1 | |
133 | unmatched files in local: |
|
|||
134 | a.orig |
|
|||
135 | resolving manifests |
|
132 | resolving manifests | |
136 | overwrite: False, partial: False |
|
133 | overwrite: False, partial: False | |
137 | ancestor: 4c60f11aa304, local: 6f5ea6ac8b70+, remote: 97f8bfe72746 |
|
134 | ancestor: 4c60f11aa304, local: 6f5ea6ac8b70+, remote: 97f8bfe72746 | |
@@ -141,8 +138,6 b' Graft out of order, skipping a merge and' | |||||
141 | e |
|
138 | e | |
142 | grafting revision 4 |
|
139 | grafting revision 4 | |
143 | searching for copies back to rev 1 |
|
140 | searching for copies back to rev 1 | |
144 | unmatched files in local: |
|
|||
145 | a.orig |
|
|||
146 | resolving manifests |
|
141 | resolving manifests | |
147 | overwrite: False, partial: False |
|
142 | overwrite: False, partial: False | |
148 | ancestor: 4c60f11aa304, local: 77eb504366ab+, remote: 9c233e8e184d |
|
143 | ancestor: 4c60f11aa304, local: 77eb504366ab+, remote: 9c233e8e184d |
@@ -24,11 +24,11 b' http://mercurial.selenic.com/bts/issue61' | |||||
24 |
|
24 | |||
25 | $ hg merge |
|
25 | $ hg merge | |
26 | merging src/a.c and source/a.c to source/a.c |
|
26 | merging src/a.c and source/a.c to source/a.c | |
27 |
|
|
27 | 0 files updated, 1 files merged, 0 files removed, 0 files unresolved | |
28 | (branch merge, don't forget to commit) |
|
28 | (branch merge, don't forget to commit) | |
29 |
|
29 | |||
30 | $ hg status |
|
30 | $ hg status | |
31 | M source/a.c |
|
31 | M source/a.c | |
32 | R src/a.c |
|
32 | R src/a.c | |
33 |
? s |
|
33 | ? src/a.o | |
34 |
|
34 |
@@ -27,7 +27,6 b'' | |||||
27 | searching for copies back to rev 1 |
|
27 | searching for copies back to rev 1 | |
28 | unmatched files in local: |
|
28 | unmatched files in local: | |
29 | a/c |
|
29 | a/c | |
30 | a/d |
|
|||
31 | unmatched files in other: |
|
30 | unmatched files in other: | |
32 | b/a |
|
31 | b/a | |
33 | b/b |
|
32 | b/b | |
@@ -37,33 +36,29 b'' | |||||
37 | checking for directory renames |
|
36 | checking for directory renames | |
38 | dir a/ -> b/ |
|
37 | dir a/ -> b/ | |
39 | file a/c -> b/c |
|
38 | file a/c -> b/c | |
40 | file a/d -> b/d |
|
|||
41 | resolving manifests |
|
39 | resolving manifests | |
42 | overwrite: False, partial: False |
|
40 | overwrite: False, partial: False | |
43 | ancestor: f9b20c0d4c51, local: ce36d17b18fb+, remote: 397f8b00a740 |
|
41 | ancestor: f9b20c0d4c51, local: ce36d17b18fb+, remote: 397f8b00a740 | |
44 | a/d: remote renamed directory to b/d -> d |
|
|||
45 | a/c: remote renamed directory to b/c -> d |
|
42 | a/c: remote renamed directory to b/c -> d | |
46 | a/b: other deleted -> r |
|
43 | a/b: other deleted -> r | |
47 | a/a: other deleted -> r |
|
44 | a/a: other deleted -> r | |
48 | b/a: remote created -> g |
|
45 | b/a: remote created -> g | |
49 | b/b: remote created -> g |
|
46 | b/b: remote created -> g | |
50 |
updating: a/a 1/ |
|
47 | updating: a/a 1/5 files (20.00%) | |
51 | removing a/a |
|
48 | removing a/a | |
52 |
updating: a/b 2/ |
|
49 | updating: a/b 2/5 files (40.00%) | |
53 | removing a/b |
|
50 | removing a/b | |
54 |
updating: a/c 3/ |
|
51 | updating: a/c 3/5 files (60.00%) | |
55 | moving a/c to b/c |
|
52 | moving a/c to b/c | |
56 |
updating: a |
|
53 | updating: b/a 4/5 files (80.00%) | |
57 | moving a/d to b/d |
|
|||
58 | updating: b/a 5/6 files (83.33%) |
|
|||
59 | getting b/a |
|
54 | getting b/a | |
60 |
updating: b/b |
|
55 | updating: b/b 5/5 files (100.00%) | |
61 | getting b/b |
|
56 | getting b/b | |
62 |
|
|
57 | 3 files updated, 0 files merged, 2 files removed, 0 files unresolved | |
63 | (branch merge, don't forget to commit) |
|
58 | (branch merge, don't forget to commit) | |
64 |
|
59 | |||
65 | $ echo a/* b/* |
|
60 | $ echo a/* b/* | |
66 |
a/ |
|
61 | a/d b/a b/b b/c | |
67 | $ hg st -C |
|
62 | $ hg st -C | |
68 | M b/a |
|
63 | M b/a | |
69 | M b/b |
|
64 | M b/b | |
@@ -72,7 +67,7 b'' | |||||
72 | R a/a |
|
67 | R a/a | |
73 | R a/b |
|
68 | R a/b | |
74 | R a/c |
|
69 | R a/c | |
75 |
? |
|
70 | ? a/d | |
76 | $ hg ci -m "3 merge 2+1" |
|
71 | $ hg ci -m "3 merge 2+1" | |
77 | $ hg debugrename b/c |
|
72 | $ hg debugrename b/c | |
78 | b/c renamed from a/c:354ae8da6e890359ef49ade27b68bbc361f3ca88 (glob) |
|
73 | b/c renamed from a/c:354ae8da6e890359ef49ade27b68bbc361f3ca88 (glob) | |
@@ -84,7 +79,6 b'' | |||||
84 | unmatched files in local: |
|
79 | unmatched files in local: | |
85 | b/a |
|
80 | b/a | |
86 | b/b |
|
81 | b/b | |
87 | b/d |
|
|||
88 | unmatched files in other: |
|
82 | unmatched files in other: | |
89 | a/c |
|
83 | a/c | |
90 | all copies found (* = to merge, ! = divergent): |
|
84 | all copies found (* = to merge, ! = divergent): | |
@@ -103,11 +97,11 b'' | |||||
103 | (branch merge, don't forget to commit) |
|
97 | (branch merge, don't forget to commit) | |
104 |
|
98 | |||
105 | $ echo a/* b/* |
|
99 | $ echo a/* b/* | |
106 |
a/ |
|
100 | a/d b/a b/b b/c | |
107 | $ hg st -C |
|
101 | $ hg st -C | |
108 | A b/c |
|
102 | A b/c | |
109 | a/c |
|
103 | a/c | |
110 |
? |
|
104 | ? a/d | |
111 | $ hg ci -m "4 merge 1+2" |
|
105 | $ hg ci -m "4 merge 1+2" | |
112 | created new head |
|
106 | created new head | |
113 | $ hg debugrename b/c |
|
107 | $ hg debugrename b/c |
General Comments 0
You need to be logged in to leave comments.
Login now