Show More
@@ -226,6 +226,8 b' def manifestmerge(repo, p1, p2, pa, over' | |||||
226 | act("prompt keep", "a", f) |
|
226 | act("prompt keep", "a", f) | |
227 | else: |
|
227 | else: | |
228 | act("other deleted", "r", f) |
|
228 | act("other deleted", "r", f) | |
|
229 | elif overwrite and n[20:] == "a": # do not erase the working copy | |||
|
230 | act("remote deleted", "f", f) | |||
229 | else: |
|
231 | else: | |
230 | # file is created on branch or in working directory |
|
232 | # file is created on branch or in working directory | |
231 | if (overwrite and n[20:] != "u") or (backwards and not n[20:]): |
|
233 | if (overwrite and n[20:] != "u") or (backwards and not n[20:]): |
@@ -253,7 +253,7 b' rolling back last transaction' | |||||
253 | % status |
|
253 | % status | |
254 | A c |
|
254 | A c | |
255 | % update -C |
|
255 | % update -C | |
256 |
0 files updated, 0 files merged, |
|
256 | 0 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
257 | % custom keyword expansion |
|
257 | % custom keyword expansion | |
258 | % try with kwdemo |
|
258 | % try with kwdemo | |
259 | [extensions] |
|
259 | [extensions] | |
@@ -280,12 +280,14 b' a' | |||||
280 | abort: empty commit message |
|
280 | abort: empty commit message | |
281 | % status |
|
281 | % status | |
282 | M a |
|
282 | M a | |
|
283 | ? c | |||
283 | ? log |
|
284 | ? log | |
284 | % commit |
|
285 | % commit | |
285 | a |
|
286 | a | |
286 | overwriting a expanding keywords |
|
287 | overwriting a expanding keywords | |
287 | committed changeset 2:bb948857c743469b22bbf51f7ec8112279ca5d83 |
|
288 | committed changeset 2:bb948857c743469b22bbf51f7ec8112279ca5d83 | |
288 | % status |
|
289 | % status | |
|
290 | ? c | |||
289 | % verify |
|
291 | % verify | |
290 | checking changesets |
|
292 | checking changesets | |
291 | checking manifests |
|
293 | checking manifests | |
@@ -313,10 +315,12 b' 2: $Xinfo$' | |||||
313 | % remove |
|
315 | % remove | |
314 | committed changeset 3:d14c712653769de926994cf7fbb06c8fbd68f012 |
|
316 | committed changeset 3:d14c712653769de926994cf7fbb06c8fbd68f012 | |
315 | % status |
|
317 | % status | |
|
318 | ? c | |||
316 | % rollback |
|
319 | % rollback | |
317 | rolling back last transaction |
|
320 | rolling back last transaction | |
318 | % status |
|
321 | % status | |
319 | R a |
|
322 | R a | |
|
323 | ? c | |||
320 | % revert a |
|
324 | % revert a | |
321 | % cat a |
|
325 | % cat a | |
322 | expand $Id: a bb948857c743 Thu, 01 Jan 1970 00:00:02 +0000 user $ |
|
326 | expand $Id: a bb948857c743 Thu, 01 Jan 1970 00:00:02 +0000 user $ |
@@ -242,7 +242,7 b' added 1 changesets with 1 changes to 1 f' | |||||
242 | 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
|
242 | 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
243 | abort: local changes found |
|
243 | abort: local changes found | |
244 | % --force strip with local changes |
|
244 | % --force strip with local changes | |
245 |
0 files updated, 0 files merged, |
|
245 | 0 files updated, 0 files merged, 1 files removed, 0 files unresolved | |
246 | saving bundle to |
|
246 | saving bundle to | |
247 | % cd b; hg qrefresh |
|
247 | % cd b; hg qrefresh | |
248 | adding a |
|
248 | adding a |
@@ -23,6 +23,7 b' add a m2' | |||||
23 | add x/y y1 |
|
23 | add x/y y1 | |
24 | hg add x/y |
|
24 | hg add x/y | |
25 | hg ci -m2 |
|
25 | hg ci -m2 | |
|
26 | cd .. | |||
26 |
|
27 | |||
27 | show() |
|
28 | show() | |
28 | { |
|
29 | { | |
@@ -41,6 +42,7 b' count=0' | |||||
41 | # $4 - test description |
|
42 | # $4 - test description | |
42 | tb() |
|
43 | tb() | |
43 | { |
|
44 | { | |
|
45 | hg clone t t2 ; cd t2 | |||
44 | hg co -q -C 0 |
|
46 | hg co -q -C 0 | |
45 |
|
47 | |||
46 | add a $count |
|
48 | add a $count | |
@@ -62,6 +64,8 b' tb()' | |||||
62 | show "--rev 2 --rev ." "branch to parent" |
|
64 | show "--rev 2 --rev ." "branch to parent" | |
63 | show "--rev . --rev 2" "parent to branch" |
|
65 | show "--rev . --rev 2" "parent to branch" | |
64 | echo |
|
66 | echo | |
|
67 | cd .. | |||
|
68 | rm -rf t2 | |||
65 | } |
|
69 | } | |
66 |
|
70 | |||
67 |
|
71 |
@@ -1,3 +1,5 b'' | |||||
|
1 | updating working directory | |||
|
2 | 3 files updated, 0 files merged, 0 files removed, 0 files unresolved | |||
1 | created new head |
|
3 | created new head | |
2 | ** rename in working dir ** |
|
4 | ** rename in working dir ** | |
3 | ** add a a1 / add a a2 / hg mv a b |
|
5 | ** add a a1 / add a a2 / hg mv a b | |
@@ -118,6 +120,8 b' new file mode 100644' | |||||
118 | +y1 |
|
120 | +y1 | |
119 |
|
121 | |||
120 |
|
122 | |||
|
123 | updating working directory | |||
|
124 | 3 files updated, 0 files merged, 0 files removed, 0 files unresolved | |||
121 | created new head |
|
125 | created new head | |
122 | ** copy in working dir ** |
|
126 | ** copy in working dir ** | |
123 | ** add a a1 / add a a2 / hg cp a b |
|
127 | ** add a a1 / add a a2 / hg cp a b | |
@@ -255,6 +259,8 b' new file mode 100644' | |||||
255 | +y1 |
|
259 | +y1 | |
256 |
|
260 | |||
257 |
|
261 | |||
|
262 | updating working directory | |||
|
263 | 3 files updated, 0 files merged, 0 files removed, 0 files unresolved | |||
258 | created new head |
|
264 | created new head | |
259 | ** single rename ** |
|
265 | ** single rename ** | |
260 | ** hg mv a b / add b b1 / add b w |
|
266 | ** hg mv a b / add b b1 / add b w | |
@@ -390,6 +396,8 b' new file mode 100644' | |||||
390 | +y1 |
|
396 | +y1 | |
391 |
|
397 | |||
392 |
|
398 | |||
|
399 | updating working directory | |||
|
400 | 3 files updated, 0 files merged, 0 files removed, 0 files unresolved | |||
393 | created new head |
|
401 | created new head | |
394 | ** single copy ** |
|
402 | ** single copy ** | |
395 | ** hg cp a b / add b b1 / add a w |
|
403 | ** hg cp a b / add b b1 / add a w | |
@@ -560,6 +568,8 b' new file mode 100644' | |||||
560 | +y1 |
|
568 | +y1 | |
561 |
|
569 | |||
562 |
|
570 | |||
|
571 | updating working directory | |||
|
572 | 3 files updated, 0 files merged, 0 files removed, 0 files unresolved | |||
563 | created new head |
|
573 | created new head | |
564 | ** rename chain ** |
|
574 | ** rename chain ** | |
565 | ** hg mv a b / hg mv b c / hg mv c d |
|
575 | ** hg mv a b / hg mv b c / hg mv c d | |
@@ -684,6 +694,8 b' new file mode 100644' | |||||
684 | +y1 |
|
694 | +y1 | |
685 |
|
695 | |||
686 |
|
696 | |||
|
697 | updating working directory | |||
|
698 | 3 files updated, 0 files merged, 0 files removed, 0 files unresolved | |||
687 | created new head |
|
699 | created new head | |
688 | ** copy chain ** |
|
700 | ** copy chain ** | |
689 | ** hg cp a b / hg cp b c / hg cp c d |
|
701 | ** hg cp a b / hg cp b c / hg cp c d | |
@@ -925,6 +937,8 b' new file mode 100644' | |||||
925 | +y1 |
|
937 | +y1 | |
926 |
|
938 | |||
927 |
|
939 | |||
|
940 | updating working directory | |||
|
941 | 3 files updated, 0 files merged, 0 files removed, 0 files unresolved | |||
928 | created new head |
|
942 | created new head | |
929 | ** circular rename ** |
|
943 | ** circular rename ** | |
930 | ** add a a1 / hg mv a b / hg mv b a |
|
944 | ** add a a1 / hg mv a b / hg mv b a | |
@@ -1047,6 +1061,8 b' new file mode 100644' | |||||
1047 | +y1 |
|
1061 | +y1 | |
1048 |
|
1062 | |||
1049 |
|
1063 | |||
|
1064 | updating working directory | |||
|
1065 | 3 files updated, 0 files merged, 0 files removed, 0 files unresolved | |||
1050 | created new head |
|
1066 | created new head | |
1051 | moving x/x to y/x |
|
1067 | moving x/x to y/x | |
1052 | ** directory move ** |
|
1068 | ** directory move ** |
@@ -7,17 +7,23 b' not removing bar: file has been marked f' | |||||
7 | A bar |
|
7 | A bar | |
8 | ./bar |
|
8 | ./bar | |
9 | ./foo |
|
9 | ./foo | |
10 |
0 files updated, 0 files merged, |
|
10 | 0 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
11 | % 01 state clean, options none |
|
11 | % 01 state clean, options none | |
12 | R foo |
|
12 | R foo | |
|
13 | ? bar | |||
|
14 | ./bar | |||
13 | 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
|
15 | 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
14 | % 02 state modified, options none |
|
16 | % 02 state modified, options none | |
15 | not removing foo: file is modified (use -f to force removal) |
|
17 | not removing foo: file is modified (use -f to force removal) | |
16 | M foo |
|
18 | M foo | |
|
19 | ? bar | |||
|
20 | ./bar | |||
17 | ./foo |
|
21 | ./foo | |
18 | 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
|
22 | 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
19 | % 03 state missing, options none |
|
23 | % 03 state missing, options none | |
20 | R foo |
|
24 | R foo | |
|
25 | ? bar | |||
|
26 | ./bar | |||
21 | 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
|
27 | 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
22 | % 10 state added, options -f |
|
28 | % 10 state added, options -f | |
23 | ? bar |
|
29 | ? bar | |
@@ -38,18 +44,24 b' not removing bar: file still exists (use' | |||||
38 | A bar |
|
44 | A bar | |
39 | ./bar |
|
45 | ./bar | |
40 | ./foo |
|
46 | ./foo | |
41 |
0 files updated, 0 files merged, |
|
47 | 0 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
42 | % 21 state clean, options -A |
|
48 | % 21 state clean, options -A | |
43 | not removing foo: file still exists (use -f to force removal) |
|
49 | not removing foo: file still exists (use -f to force removal) | |
|
50 | ? bar | |||
|
51 | ./bar | |||
44 | ./foo |
|
52 | ./foo | |
45 | 0 files updated, 0 files merged, 0 files removed, 0 files unresolved |
|
53 | 0 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
46 | % 22 state modified, options -A |
|
54 | % 22 state modified, options -A | |
47 | not removing foo: file still exists (use -f to force removal) |
|
55 | not removing foo: file still exists (use -f to force removal) | |
48 | M foo |
|
56 | M foo | |
|
57 | ? bar | |||
|
58 | ./bar | |||
49 | ./foo |
|
59 | ./foo | |
50 | 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
|
60 | 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
51 | % 23 state missing, options -A |
|
61 | % 23 state missing, options -A | |
52 | R foo |
|
62 | R foo | |
|
63 | ? bar | |||
|
64 | ./bar | |||
53 | 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
|
65 | 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
54 | % 30 state added, options -Af |
|
66 | % 30 state added, options -Af | |
55 | ? bar |
|
67 | ? bar |
@@ -14,65 +14,77 b' echo "# rename a single file"' | |||||
14 | hg rename d1/d11/a1 d2/c |
|
14 | hg rename d1/d11/a1 d2/c | |
15 | hg status -C |
|
15 | hg status -C | |
16 | hg update -C |
|
16 | hg update -C | |
|
17 | rm d2/c | |||
17 |
|
18 | |||
18 | echo "# rename --after a single file" |
|
19 | echo "# rename --after a single file" | |
19 | mv d1/d11/a1 d2/c |
|
20 | mv d1/d11/a1 d2/c | |
20 | hg rename --after d1/d11/a1 d2/c |
|
21 | hg rename --after d1/d11/a1 d2/c | |
21 | hg status -C |
|
22 | hg status -C | |
22 | hg update -C |
|
23 | hg update -C | |
|
24 | rm d2/c | |||
23 |
|
25 | |||
24 | echo "# move a single file to an existing directory" |
|
26 | echo "# move a single file to an existing directory" | |
25 | hg rename d1/d11/a1 d2 |
|
27 | hg rename d1/d11/a1 d2 | |
26 | hg status -C |
|
28 | hg status -C | |
27 | hg update -C |
|
29 | hg update -C | |
|
30 | rm d2/a1 | |||
28 |
|
31 | |||
29 | echo "# move --after a single file to an existing directory" |
|
32 | echo "# move --after a single file to an existing directory" | |
30 | mv d1/d11/a1 d2 |
|
33 | mv d1/d11/a1 d2 | |
31 | hg rename --after d1/d11/a1 d2 |
|
34 | hg rename --after d1/d11/a1 d2 | |
32 | hg status -C |
|
35 | hg status -C | |
33 | hg update -C |
|
36 | hg update -C | |
|
37 | rm d2/a1 | |||
34 |
|
38 | |||
35 | echo "# rename a file using a relative path" |
|
39 | echo "# rename a file using a relative path" | |
36 | (cd d1/d11; hg rename ../../d2/b e) |
|
40 | (cd d1/d11; hg rename ../../d2/b e) | |
37 | hg status -C |
|
41 | hg status -C | |
38 | hg update -C |
|
42 | hg update -C | |
|
43 | rm d1/d11/e | |||
39 |
|
44 | |||
40 | echo "# rename --after a file using a relative path" |
|
45 | echo "# rename --after a file using a relative path" | |
41 | (cd d1/d11; mv ../../d2/b e; hg rename --after ../../d2/b e) |
|
46 | (cd d1/d11; mv ../../d2/b e; hg rename --after ../../d2/b e) | |
42 | hg status -C |
|
47 | hg status -C | |
43 | hg update -C |
|
48 | hg update -C | |
|
49 | rm d1/d11/e | |||
44 |
|
50 | |||
45 | echo "# rename directory d1 as d3" |
|
51 | echo "# rename directory d1 as d3" | |
46 | hg rename d1/ d3 |
|
52 | hg rename d1/ d3 | |
47 | hg status -C |
|
53 | hg status -C | |
48 | hg update -C |
|
54 | hg update -C | |
|
55 | rm -rf d3 | |||
49 |
|
56 | |||
50 | echo "# rename --after directory d1 as d3" |
|
57 | echo "# rename --after directory d1 as d3" | |
51 | mv d1 d3 |
|
58 | mv d1 d3 | |
52 | hg rename --after d1 d3 |
|
59 | hg rename --after d1 d3 | |
53 | hg status -C |
|
60 | hg status -C | |
54 | hg update -C |
|
61 | hg update -C | |
|
62 | rm -rf d3 | |||
55 |
|
63 | |||
56 | echo "# move a directory using a relative path" |
|
64 | echo "# move a directory using a relative path" | |
57 | (cd d2; mkdir d3; hg rename ../d1/d11 d3) |
|
65 | (cd d2; mkdir d3; hg rename ../d1/d11 d3) | |
58 | hg status -C |
|
66 | hg status -C | |
59 | hg update -C |
|
67 | hg update -C | |
|
68 | rm -rf d2/d3 | |||
60 |
|
69 | |||
61 | echo "# move --after a directory using a relative path" |
|
70 | echo "# move --after a directory using a relative path" | |
62 | (cd d2; mkdir d3; mv ../d1/d11 d3; hg rename --after ../d1/d11 d3) |
|
71 | (cd d2; mkdir d3; mv ../d1/d11 d3; hg rename --after ../d1/d11 d3) | |
63 | hg status -C |
|
72 | hg status -C | |
64 | hg update -C |
|
73 | hg update -C | |
|
74 | rm -rf d2/d3 | |||
65 |
|
75 | |||
66 | echo "# move directory d1/d11 to an existing directory d2 (removes empty d1)" |
|
76 | echo "# move directory d1/d11 to an existing directory d2 (removes empty d1)" | |
67 | hg rename d1/d11/ d2 |
|
77 | hg rename d1/d11/ d2 | |
68 | hg status -C |
|
78 | hg status -C | |
69 | hg update -C |
|
79 | hg update -C | |
|
80 | rm -rf d2/d11 | |||
70 |
|
81 | |||
71 | echo "# move directories d1 and d2 to a new directory d3" |
|
82 | echo "# move directories d1 and d2 to a new directory d3" | |
72 | mkdir d3 |
|
83 | mkdir d3 | |
73 | hg rename d1 d2 d3 |
|
84 | hg rename d1 d2 d3 | |
74 | hg status -C |
|
85 | hg status -C | |
75 | hg update -C |
|
86 | hg update -C | |
|
87 | rm -rf d3 | |||
76 |
|
88 | |||
77 | echo "# move --after directories d1 and d2 to a new directory d3" |
|
89 | echo "# move --after directories d1 and d2 to a new directory d3" | |
78 | mkdir d3 |
|
90 | mkdir d3 | |
@@ -80,6 +92,7 b' mv d1 d2 d3' | |||||
80 | hg rename --after d1 d2 d3 |
|
92 | hg rename --after d1 d2 d3 | |
81 | hg status -C |
|
93 | hg status -C | |
82 | hg update -C |
|
94 | hg update -C | |
|
95 | rm -rf d3 | |||
83 |
|
96 | |||
84 | echo "# move everything under directory d1 to existing directory d2, do not" |
|
97 | echo "# move everything under directory d1 to existing directory d2, do not" | |
85 | echo "# overwrite existing files (d2/b)" |
|
98 | echo "# overwrite existing files (d2/b)" | |
@@ -87,6 +100,7 b' hg rename d1/* d2' | |||||
87 | hg status -C |
|
100 | hg status -C | |
88 | diff d1/b d2/b |
|
101 | diff d1/b d2/b | |
89 | hg update -C |
|
102 | hg update -C | |
|
103 | rm d2/a d2/ba d2/d11/a1 | |||
90 |
|
104 | |||
91 | echo "# attempt to move one file into a non-existent directory" |
|
105 | echo "# attempt to move one file into a non-existent directory" | |
92 | hg rename d1/a dx/ |
|
106 | hg rename d1/a dx/ | |
@@ -102,6 +116,7 b' mkdir d2/d21' | |||||
102 | hg rename 'glob:d1/**' d2/d21 |
|
116 | hg rename 'glob:d1/**' d2/d21 | |
103 | hg status -C |
|
117 | hg status -C | |
104 | hg update -C |
|
118 | hg update -C | |
|
119 | rm -rf d2/d21 | |||
105 |
|
120 | |||
106 | echo "# move --after some files under d1 to d2/d21 (glob)" |
|
121 | echo "# move --after some files under d1 to d2/d21 (glob)" | |
107 | mkdir d2/d21 |
|
122 | mkdir d2/d21 | |
@@ -109,12 +124,14 b' mv d1/a d1/d11/a1 d2/d21' | |||||
109 | hg rename --after 'glob:d1/**' d2/d21 |
|
124 | hg rename --after 'glob:d1/**' d2/d21 | |
110 | hg status -C |
|
125 | hg status -C | |
111 | hg update -C |
|
126 | hg update -C | |
|
127 | rm -rf d2/d21 | |||
112 |
|
128 | |||
113 | echo "# move every file under d1 starting with an 'a' to d2/d21 (regexp)" |
|
129 | echo "# move every file under d1 starting with an 'a' to d2/d21 (regexp)" | |
114 | mkdir d2/d21 |
|
130 | mkdir d2/d21 | |
115 | hg rename 're:d1/([^a][^/]*/)*a.*' d2/d21 |
|
131 | hg rename 're:d1/([^a][^/]*/)*a.*' d2/d21 | |
116 | hg status -C |
|
132 | hg status -C | |
117 | hg update -C |
|
133 | hg update -C | |
|
134 | rm -rf d2/d21 | |||
118 |
|
135 | |||
119 | echo "# attempt to overwrite an existing file" |
|
136 | echo "# attempt to overwrite an existing file" | |
120 | echo "ca" > d1/ca |
|
137 | echo "ca" > d1/ca | |
@@ -127,24 +144,28 b' echo "ca" > d1/ca' | |||||
127 | hg rename --force d1/ba d1/ca |
|
144 | hg rename --force d1/ba d1/ca | |
128 | hg status -C |
|
145 | hg status -C | |
129 | hg update -C |
|
146 | hg update -C | |
|
147 | rm d1/ca | |||
130 |
|
148 | |||
131 | echo "# replace a symlink with a file" |
|
149 | echo "# replace a symlink with a file" | |
132 | ln -s ba d1/ca |
|
150 | ln -s ba d1/ca | |
133 | hg rename --force d1/ba d1/ca |
|
151 | hg rename --force d1/ba d1/ca | |
134 | hg status -C |
|
152 | hg status -C | |
135 | hg update -C |
|
153 | hg update -C | |
|
154 | rm d1/ca | |||
136 |
|
155 | |||
137 | echo "# do not copy more than one source file to the same destination file" |
|
156 | echo "# do not copy more than one source file to the same destination file" | |
138 | mkdir d3 |
|
157 | mkdir d3 | |
139 | hg rename d1/* d2/* d3 |
|
158 | hg rename d1/* d2/* d3 | |
140 | hg status -C |
|
159 | hg status -C | |
141 | hg update -C |
|
160 | hg update -C | |
|
161 | rm -rf d3 | |||
142 |
|
162 | |||
143 | echo "# move a whole subtree with \"hg rename .\"" |
|
163 | echo "# move a whole subtree with \"hg rename .\"" | |
144 | mkdir d3 |
|
164 | mkdir d3 | |
145 | (cd d1; hg rename . ../d3) |
|
165 | (cd d1; hg rename . ../d3) | |
146 | hg status -C |
|
166 | hg status -C | |
147 | hg update -C |
|
167 | hg update -C | |
|
168 | rm -rf d3 | |||
148 |
|
169 | |||
149 | echo "# move a whole subtree with \"hg rename --after .\"" |
|
170 | echo "# move a whole subtree with \"hg rename --after .\"" | |
150 | mkdir d3 |
|
171 | mkdir d3 | |
@@ -152,23 +173,27 b' mv d1/* d3' | |||||
152 | (cd d1; hg rename --after . ../d3) |
|
173 | (cd d1; hg rename --after . ../d3) | |
153 | hg status -C |
|
174 | hg status -C | |
154 | hg update -C |
|
175 | hg update -C | |
|
176 | rm -rf d3 | |||
155 |
|
177 | |||
156 | echo "# move the parent tree with \"hg rename ..\"" |
|
178 | echo "# move the parent tree with \"hg rename ..\"" | |
157 | (cd d1/d11; hg rename .. ../../d3) |
|
179 | (cd d1/d11; hg rename .. ../../d3) | |
158 | hg status -C |
|
180 | hg status -C | |
159 | hg update -C |
|
181 | hg update -C | |
|
182 | rm -rf d3 | |||
160 |
|
183 | |||
161 | echo "# skip removed files" |
|
184 | echo "# skip removed files" | |
162 | hg remove d1/b |
|
185 | hg remove d1/b | |
163 | hg rename d1 d3 |
|
186 | hg rename d1 d3 | |
164 | hg status -C |
|
187 | hg status -C | |
165 | hg update -C |
|
188 | hg update -C | |
|
189 | rm -rf d3 | |||
166 |
|
190 | |||
167 | echo "# transitive rename" |
|
191 | echo "# transitive rename" | |
168 | hg rename d1/b d1/bb |
|
192 | hg rename d1/b d1/bb | |
169 | hg rename d1/bb d1/bc |
|
193 | hg rename d1/bb d1/bc | |
170 | hg status -C |
|
194 | hg status -C | |
171 | hg update -C |
|
195 | hg update -C | |
|
196 | rm d1/bc | |||
172 |
|
197 | |||
173 | echo "# transitive rename --after" |
|
198 | echo "# transitive rename --after" | |
174 | hg rename d1/b d1/bb |
|
199 | hg rename d1/b d1/bb | |
@@ -176,6 +201,7 b' mv d1/bb d1/bc' | |||||
176 | hg rename --after d1/bb d1/bc |
|
201 | hg rename --after d1/bb d1/bc | |
177 | hg status -C |
|
202 | hg status -C | |
178 | hg update -C |
|
203 | hg update -C | |
|
204 | rm d1/bc | |||
179 |
|
205 | |||
180 | echo "# idempotent renames (d1/b -> d1/bb followed by d1/bb -> d1/b)" |
|
206 | echo "# idempotent renames (d1/b -> d1/bb followed by d1/bb -> d1/b)" | |
181 | hg rename d1/b d1/bb |
|
207 | hg rename d1/b d1/bb |
@@ -2,32 +2,32 b'' | |||||
2 | A d2/c |
|
2 | A d2/c | |
3 | d1/d11/a1 |
|
3 | d1/d11/a1 | |
4 | R d1/d11/a1 |
|
4 | R d1/d11/a1 | |
5 |
1 files updated, 0 files merged, |
|
5 | 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
6 | # rename --after a single file |
|
6 | # rename --after a single file | |
7 | A d2/c |
|
7 | A d2/c | |
8 | d1/d11/a1 |
|
8 | d1/d11/a1 | |
9 | R d1/d11/a1 |
|
9 | R d1/d11/a1 | |
10 |
1 files updated, 0 files merged, |
|
10 | 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
11 | # move a single file to an existing directory |
|
11 | # move a single file to an existing directory | |
12 | A d2/a1 |
|
12 | A d2/a1 | |
13 | d1/d11/a1 |
|
13 | d1/d11/a1 | |
14 | R d1/d11/a1 |
|
14 | R d1/d11/a1 | |
15 |
1 files updated, 0 files merged, |
|
15 | 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
16 | # move --after a single file to an existing directory |
|
16 | # move --after a single file to an existing directory | |
17 | A d2/a1 |
|
17 | A d2/a1 | |
18 | d1/d11/a1 |
|
18 | d1/d11/a1 | |
19 | R d1/d11/a1 |
|
19 | R d1/d11/a1 | |
20 |
1 files updated, 0 files merged, |
|
20 | 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
21 | # rename a file using a relative path |
|
21 | # rename a file using a relative path | |
22 | A d1/d11/e |
|
22 | A d1/d11/e | |
23 | d2/b |
|
23 | d2/b | |
24 | R d2/b |
|
24 | R d2/b | |
25 |
1 files updated, 0 files merged, |
|
25 | 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
26 | # rename --after a file using a relative path |
|
26 | # rename --after a file using a relative path | |
27 | A d1/d11/e |
|
27 | A d1/d11/e | |
28 | d2/b |
|
28 | d2/b | |
29 | R d2/b |
|
29 | R d2/b | |
30 |
1 files updated, 0 files merged, |
|
30 | 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
31 | # rename directory d1 as d3 |
|
31 | # rename directory d1 as d3 | |
32 | moving d1/a to d3/a |
|
32 | moving d1/a to d3/a | |
33 | moving d1/b to d3/b |
|
33 | moving d1/b to d3/b | |
@@ -45,7 +45,7 b' R d1/a' | |||||
45 | R d1/b |
|
45 | R d1/b | |
46 | R d1/ba |
|
46 | R d1/ba | |
47 | R d1/d11/a1 |
|
47 | R d1/d11/a1 | |
48 |
4 files updated, 0 files merged, |
|
48 | 4 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
49 | # rename --after directory d1 as d3 |
|
49 | # rename --after directory d1 as d3 | |
50 | moving d1/a to d3/a |
|
50 | moving d1/a to d3/a | |
51 | moving d1/b to d3/b |
|
51 | moving d1/b to d3/b | |
@@ -63,25 +63,25 b' R d1/a' | |||||
63 | R d1/b |
|
63 | R d1/b | |
64 | R d1/ba |
|
64 | R d1/ba | |
65 | R d1/d11/a1 |
|
65 | R d1/d11/a1 | |
66 |
4 files updated, 0 files merged, |
|
66 | 4 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
67 | # move a directory using a relative path |
|
67 | # move a directory using a relative path | |
68 | moving ../d1/d11/a1 to d3/d11/a1 |
|
68 | moving ../d1/d11/a1 to d3/d11/a1 | |
69 | A d2/d3/d11/a1 |
|
69 | A d2/d3/d11/a1 | |
70 | d1/d11/a1 |
|
70 | d1/d11/a1 | |
71 | R d1/d11/a1 |
|
71 | R d1/d11/a1 | |
72 |
1 files updated, 0 files merged, |
|
72 | 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
73 | # move --after a directory using a relative path |
|
73 | # move --after a directory using a relative path | |
74 | moving ../d1/d11/a1 to d3/d11/a1 |
|
74 | moving ../d1/d11/a1 to d3/d11/a1 | |
75 | A d2/d3/d11/a1 |
|
75 | A d2/d3/d11/a1 | |
76 | d1/d11/a1 |
|
76 | d1/d11/a1 | |
77 | R d1/d11/a1 |
|
77 | R d1/d11/a1 | |
78 |
1 files updated, 0 files merged, |
|
78 | 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
79 | # move directory d1/d11 to an existing directory d2 (removes empty d1) |
|
79 | # move directory d1/d11 to an existing directory d2 (removes empty d1) | |
80 | moving d1/d11/a1 to d2/d11/a1 |
|
80 | moving d1/d11/a1 to d2/d11/a1 | |
81 | A d2/d11/a1 |
|
81 | A d2/d11/a1 | |
82 | d1/d11/a1 |
|
82 | d1/d11/a1 | |
83 | R d1/d11/a1 |
|
83 | R d1/d11/a1 | |
84 |
1 files updated, 0 files merged, |
|
84 | 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
85 | # move directories d1 and d2 to a new directory d3 |
|
85 | # move directories d1 and d2 to a new directory d3 | |
86 | moving d1/a to d3/d1/a |
|
86 | moving d1/a to d3/d1/a | |
87 | moving d1/b to d3/d1/b |
|
87 | moving d1/b to d3/d1/b | |
@@ -103,7 +103,7 b' R d1/b' | |||||
103 | R d1/ba |
|
103 | R d1/ba | |
104 | R d1/d11/a1 |
|
104 | R d1/d11/a1 | |
105 | R d2/b |
|
105 | R d2/b | |
106 |
5 files updated, 0 files merged, |
|
106 | 5 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
107 | # move --after directories d1 and d2 to a new directory d3 |
|
107 | # move --after directories d1 and d2 to a new directory d3 | |
108 | moving d1/a to d3/d1/a |
|
108 | moving d1/a to d3/d1/a | |
109 | moving d1/b to d3/d1/b |
|
109 | moving d1/b to d3/d1/b | |
@@ -125,7 +125,7 b' R d1/b' | |||||
125 | R d1/ba |
|
125 | R d1/ba | |
126 | R d1/d11/a1 |
|
126 | R d1/d11/a1 | |
127 | R d2/b |
|
127 | R d2/b | |
128 |
5 files updated, 0 files merged, |
|
128 | 5 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
129 | # move everything under directory d1 to existing directory d2, do not |
|
129 | # move everything under directory d1 to existing directory d2, do not | |
130 | # overwrite existing files (d2/b) |
|
130 | # overwrite existing files (d2/b) | |
131 | d2/b: not overwriting - file exists |
|
131 | d2/b: not overwriting - file exists | |
@@ -143,7 +143,7 b' 1c1' | |||||
143 | < d1/b |
|
143 | < d1/b | |
144 | --- |
|
144 | --- | |
145 | > d2/b |
|
145 | > d2/b | |
146 |
3 files updated, 0 files merged, |
|
146 | 3 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
147 | # attempt to move one file into a non-existent directory |
|
147 | # attempt to move one file into a non-existent directory | |
148 | abort: destination dx/ is not a directory |
|
148 | abort: destination dx/ is not a directory | |
149 | 0 files updated, 0 files merged, 0 files removed, 0 files unresolved |
|
149 | 0 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
@@ -167,7 +167,7 b' R d1/a' | |||||
167 | R d1/b |
|
167 | R d1/b | |
168 | R d1/ba |
|
168 | R d1/ba | |
169 | R d1/d11/a1 |
|
169 | R d1/d11/a1 | |
170 |
4 files updated, 0 files merged, |
|
170 | 4 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
171 | # move --after some files under d1 to d2/d21 (glob) |
|
171 | # move --after some files under d1 to d2/d21 (glob) | |
172 | moving d1/a to d2/d21/a |
|
172 | moving d1/a to d2/d21/a | |
173 | moving d1/d11/a1 to d2/d21/a1 |
|
173 | moving d1/d11/a1 to d2/d21/a1 | |
@@ -177,7 +177,7 b' A d2/d21/a1' | |||||
177 | d1/d11/a1 |
|
177 | d1/d11/a1 | |
178 | R d1/a |
|
178 | R d1/a | |
179 | R d1/d11/a1 |
|
179 | R d1/d11/a1 | |
180 |
2 files updated, 0 files merged, |
|
180 | 2 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
181 | # move every file under d1 starting with an 'a' to d2/d21 (regexp) |
|
181 | # move every file under d1 starting with an 'a' to d2/d21 (regexp) | |
182 | moving d1/a to d2/d21/a |
|
182 | moving d1/a to d2/d21/a | |
183 | moving d1/d11/a1 to d2/d21/a1 |
|
183 | moving d1/d11/a1 to d2/d21/a1 | |
@@ -187,7 +187,7 b' A d2/d21/a1' | |||||
187 | d1/d11/a1 |
|
187 | d1/d11/a1 | |
188 | R d1/a |
|
188 | R d1/a | |
189 | R d1/d11/a1 |
|
189 | R d1/d11/a1 | |
190 |
2 files updated, 0 files merged, |
|
190 | 2 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
191 | # attempt to overwrite an existing file |
|
191 | # attempt to overwrite an existing file | |
192 | d1/ca: not overwriting - file exists |
|
192 | d1/ca: not overwriting - file exists | |
193 | ? d1/ca |
|
193 | ? d1/ca | |
@@ -196,12 +196,12 b' 0 files updated, 0 files merged, 0 files' | |||||
196 | A d1/ca |
|
196 | A d1/ca | |
197 | d1/ba |
|
197 | d1/ba | |
198 | R d1/ba |
|
198 | R d1/ba | |
199 |
1 files updated, 0 files merged, |
|
199 | 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
200 | # replace a symlink with a file |
|
200 | # replace a symlink with a file | |
201 | A d1/ca |
|
201 | A d1/ca | |
202 | d1/ba |
|
202 | d1/ba | |
203 | R d1/ba |
|
203 | R d1/ba | |
204 |
1 files updated, 0 files merged, |
|
204 | 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
205 | # do not copy more than one source file to the same destination file |
|
205 | # do not copy more than one source file to the same destination file | |
206 | moving d1/d11/a1 to d3/d11/a1 |
|
206 | moving d1/d11/a1 to d3/d11/a1 | |
207 | d3/b: not overwriting - d2/b collides with d1/b |
|
207 | d3/b: not overwriting - d2/b collides with d1/b | |
@@ -217,7 +217,7 b' R d1/a' | |||||
217 | R d1/b |
|
217 | R d1/b | |
218 | R d1/ba |
|
218 | R d1/ba | |
219 | R d1/d11/a1 |
|
219 | R d1/d11/a1 | |
220 |
4 files updated, 0 files merged, |
|
220 | 4 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
221 | # move a whole subtree with "hg rename ." |
|
221 | # move a whole subtree with "hg rename ." | |
222 | moving a to ../d3/d1/a |
|
222 | moving a to ../d3/d1/a | |
223 | moving b to ../d3/d1/b |
|
223 | moving b to ../d3/d1/b | |
@@ -235,7 +235,7 b' R d1/a' | |||||
235 | R d1/b |
|
235 | R d1/b | |
236 | R d1/ba |
|
236 | R d1/ba | |
237 | R d1/d11/a1 |
|
237 | R d1/d11/a1 | |
238 |
4 files updated, 0 files merged, |
|
238 | 4 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
239 | # move a whole subtree with "hg rename --after ." |
|
239 | # move a whole subtree with "hg rename --after ." | |
240 | moving a to ../d3/a |
|
240 | moving a to ../d3/a | |
241 | moving b to ../d3/b |
|
241 | moving b to ../d3/b | |
@@ -253,7 +253,7 b' R d1/a' | |||||
253 | R d1/b |
|
253 | R d1/b | |
254 | R d1/ba |
|
254 | R d1/ba | |
255 | R d1/d11/a1 |
|
255 | R d1/d11/a1 | |
256 |
4 files updated, 0 files merged, |
|
256 | 4 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
257 | # move the parent tree with "hg rename .." |
|
257 | # move the parent tree with "hg rename .." | |
258 | moving ../a to ../../d3/a |
|
258 | moving ../a to ../../d3/a | |
259 | moving ../b to ../../d3/b |
|
259 | moving ../b to ../../d3/b | |
@@ -271,7 +271,7 b' R d1/a' | |||||
271 | R d1/b |
|
271 | R d1/b | |
272 | R d1/ba |
|
272 | R d1/ba | |
273 | R d1/d11/a1 |
|
273 | R d1/d11/a1 | |
274 |
4 files updated, 0 files merged, |
|
274 | 4 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
275 | # skip removed files |
|
275 | # skip removed files | |
276 | moving d1/a to d3/a |
|
276 | moving d1/a to d3/a | |
277 | moving d1/ba to d3/ba |
|
277 | moving d1/ba to d3/ba | |
@@ -286,17 +286,17 b' R d1/a' | |||||
286 | R d1/b |
|
286 | R d1/b | |
287 | R d1/ba |
|
287 | R d1/ba | |
288 | R d1/d11/a1 |
|
288 | R d1/d11/a1 | |
289 |
4 files updated, 0 files merged, |
|
289 | 4 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
290 | # transitive rename |
|
290 | # transitive rename | |
291 | A d1/bc |
|
291 | A d1/bc | |
292 | d1/b |
|
292 | d1/b | |
293 | R d1/b |
|
293 | R d1/b | |
294 |
1 files updated, 0 files merged, |
|
294 | 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
295 | # transitive rename --after |
|
295 | # transitive rename --after | |
296 | A d1/bc |
|
296 | A d1/bc | |
297 | d1/b |
|
297 | d1/b | |
298 | R d1/b |
|
298 | R d1/b | |
299 |
1 files updated, 0 files merged, |
|
299 | 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
300 | # idempotent renames (d1/b -> d1/bb followed by d1/bb -> d1/b) |
|
300 | # idempotent renames (d1/b -> d1/bb followed by d1/bb -> d1/b) | |
301 | M d1/b |
|
301 | M d1/b | |
302 | 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
|
302 | 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
@@ -52,7 +52,7 b' A a' | |||||
52 | R d |
|
52 | R d | |
53 | %% should silently keep d removed |
|
53 | %% should silently keep d removed | |
54 | R d |
|
54 | R d | |
55 |
1 files updated, 0 files merged, |
|
55 | 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
56 | reverting c |
|
56 | reverting c | |
57 | %% should print non-executable |
|
57 | %% should print non-executable | |
58 | non-executable |
|
58 | non-executable |
@@ -28,4 +28,4 b' A dangling2' | |||||
28 | dangling -> void |
|
28 | dangling -> void | |
29 | dangling2 -> void |
|
29 | dangling2 -> void | |
30 | % issue995 |
|
30 | % issue995 | |
31 |
0 files updated, 0 files merged, |
|
31 | 0 files updated, 0 files merged, 0 files removed, 0 files unresolved |
@@ -92,6 +92,7 b' hg ci -mfoobar' | |||||
92 | hg transplant 1:3 |
|
92 | hg transplant 1:3 | |
93 | # transplant -c shouldn't use an old changeset |
|
93 | # transplant -c shouldn't use an old changeset | |
94 | hg up -C |
|
94 | hg up -C | |
|
95 | rm added | |||
95 | hg transplant 1 |
|
96 | hg transplant 1 | |
96 | hg transplant --continue |
|
97 | hg transplant --continue | |
97 | hg transplant 1:3 |
|
98 | hg transplant 1:3 |
@@ -113,7 +113,7 b' Hunk #1 FAILED at 0' | |||||
113 | 1 out of 1 hunks FAILED -- saving rejects to file foo.rej |
|
113 | 1 out of 1 hunks FAILED -- saving rejects to file foo.rej | |
114 | patch failed to apply |
|
114 | patch failed to apply | |
115 | abort: Fix up the merge and run hg transplant --continue |
|
115 | abort: Fix up the merge and run hg transplant --continue | |
116 |
1 files updated, 0 files merged, |
|
116 | 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
117 | applying a1e30dd1b8e7 |
|
117 | applying a1e30dd1b8e7 | |
118 | patching file foo |
|
118 | patching file foo | |
119 | Hunk #1 FAILED at 0 |
|
119 | Hunk #1 FAILED at 0 |
General Comments 0
You need to be logged in to leave comments.
Login now