test-rename-dir-merge.t
159 lines
| 3.5 KiB
| text/troff
|
Tads3Lexer
/ tests / test-rename-dir-merge.t
Martin Geisler
|
r13956 | $ hg init t | ||
Nicolas Dumazet
|
r12114 | $ cd t | ||
$ mkdir a | ||||
$ echo foo > a/a | ||||
$ echo bar > a/b | ||||
$ hg ci -Am "0" | ||||
adding a/a | ||||
adding a/b | ||||
$ hg co -C 0 | ||||
0 files updated, 0 files merged, 0 files removed, 0 files unresolved | ||||
$ hg mv a b | ||||
Mads Kiilerich
|
r15447 | moving a/a to b/a (glob) | ||
moving a/b to b/b (glob) | ||||
Nicolas Dumazet
|
r12114 | $ hg ci -m "1 mv a/ b/" | ||
$ hg co -C 0 | ||||
2 files updated, 0 files merged, 2 files removed, 0 files unresolved | ||||
$ echo baz > a/c | ||||
$ echo quux > a/d | ||||
$ hg add a/c | ||||
$ hg ci -m "2 add a/c" | ||||
created new head | ||||
$ hg merge --debug 1 | ||||
searching for copies back to rev 1 | ||||
unmatched files in local: | ||||
a/c | ||||
unmatched files in other: | ||||
b/a | ||||
b/b | ||||
Thomas Arendsen Hein
|
r16795 | all copies found (* = to merge, ! = divergent, % = renamed and deleted): | ||
Nicolas Dumazet
|
r12114 | b/a -> a/a | ||
b/b -> a/b | ||||
checking for directory renames | ||||
dir a/ -> b/ | ||||
file a/c -> b/c | ||||
resolving manifests | ||||
Martin Geisler
|
r15625 | overwrite: False, partial: False | ||
ancestor: f9b20c0d4c51, local: ce36d17b18fb+, remote: 397f8b00a740 | ||||
Nicolas Dumazet
|
r12114 | a/c: remote renamed directory to b/c -> d | ||
a/b: other deleted -> r | ||||
a/a: other deleted -> r | ||||
b/a: remote created -> g | ||||
b/b: remote created -> g | ||||
Matt Mackall
|
r16094 | updating: a/a 1/5 files (20.00%) | ||
Nicolas Dumazet
|
r12114 | removing a/a | ||
Matt Mackall
|
r16094 | updating: a/b 2/5 files (40.00%) | ||
Nicolas Dumazet
|
r12114 | removing a/b | ||
Matt Mackall
|
r16094 | updating: a/c 3/5 files (60.00%) | ||
Nicolas Dumazet
|
r12114 | moving a/c to b/c | ||
Matt Mackall
|
r16094 | updating: b/a 4/5 files (80.00%) | ||
Nicolas Dumazet
|
r12114 | getting b/a | ||
Matt Mackall
|
r16094 | updating: b/b 5/5 files (100.00%) | ||
Nicolas Dumazet
|
r12114 | getting b/b | ||
Matt Mackall
|
r16094 | 3 files updated, 0 files merged, 2 files removed, 0 files unresolved | ||
Nicolas Dumazet
|
r12114 | (branch merge, don't forget to commit) | ||
$ echo a/* b/* | ||||
Matt Mackall
|
r16094 | a/d b/a b/b b/c | ||
Nicolas Dumazet
|
r12114 | $ hg st -C | ||
M b/a | ||||
M b/b | ||||
A b/c | ||||
a/c | ||||
R a/a | ||||
R a/b | ||||
R a/c | ||||
Matt Mackall
|
r16094 | ? a/d | ||
Nicolas Dumazet
|
r12114 | $ hg ci -m "3 merge 2+1" | ||
$ hg debugrename b/c | ||||
Mads Kiilerich
|
r15447 | b/c renamed from a/c:354ae8da6e890359ef49ade27b68bbc361f3ca88 (glob) | ||
Nicolas Dumazet
|
r12114 | |||
$ hg co -C 1 | ||||
0 files updated, 0 files merged, 1 files removed, 0 files unresolved | ||||
$ hg merge --debug 2 | ||||
searching for copies back to rev 1 | ||||
unmatched files in local: | ||||
b/a | ||||
b/b | ||||
unmatched files in other: | ||||
a/c | ||||
Thomas Arendsen Hein
|
r16795 | all copies found (* = to merge, ! = divergent, % = renamed and deleted): | ||
Nicolas Dumazet
|
r12114 | b/a -> a/a | ||
b/b -> a/b | ||||
checking for directory renames | ||||
dir a/ -> b/ | ||||
file a/c -> b/c | ||||
resolving manifests | ||||
Martin Geisler
|
r15625 | overwrite: False, partial: False | ||
ancestor: f9b20c0d4c51, local: 397f8b00a740+, remote: ce36d17b18fb | ||||
Nicolas Dumazet
|
r12114 | None: local renamed directory to b/c -> d | ||
updating:None 1/1 files (100.00%) | ||||
getting a/c to b/c | ||||
1 files updated, 0 files merged, 0 files removed, 0 files unresolved | ||||
(branch merge, don't forget to commit) | ||||
$ echo a/* b/* | ||||
Matt Mackall
|
r16094 | a/d b/a b/b b/c | ||
Nicolas Dumazet
|
r12114 | $ hg st -C | ||
A b/c | ||||
a/c | ||||
Matt Mackall
|
r16094 | ? a/d | ||
Nicolas Dumazet
|
r12114 | $ hg ci -m "4 merge 1+2" | ||
created new head | ||||
$ hg debugrename b/c | ||||
Mads Kiilerich
|
r15447 | b/c renamed from a/c:354ae8da6e890359ef49ade27b68bbc361f3ca88 (glob) | ||
Nicolas Dumazet
|
r12114 | |||
Second scenario with two repos: | ||||
$ cd .. | ||||
Martin Geisler
|
r13956 | $ hg init r1 | ||
Nicolas Dumazet
|
r12114 | $ cd r1 | ||
$ mkdir a | ||||
$ echo foo > a/f | ||||
$ hg add a | ||||
Mads Kiilerich
|
r15447 | adding a/f (glob) | ||
Nicolas Dumazet
|
r12114 | $ hg ci -m "a/f == foo" | ||
$ cd .. | ||||
$ hg clone r1 r2 | ||||
updating to branch default | ||||
1 files updated, 0 files merged, 0 files removed, 0 files unresolved | ||||
$ cd r2 | ||||
$ hg mv a b | ||||
Mads Kiilerich
|
r15447 | moving a/f to b/f (glob) | ||
Nicolas Dumazet
|
r12114 | $ echo foo1 > b/f | ||
$ hg ci -m" a -> b, b/f == foo1" | ||||
$ cd .. | ||||
$ cd r1 | ||||
$ mkdir a/aa | ||||
$ echo bar > a/aa/g | ||||
$ hg add a/aa | ||||
Mads Kiilerich
|
r15447 | adding a/aa/g (glob) | ||
Nicolas Dumazet
|
r12114 | $ hg ci -m "a/aa/g" | ||
$ hg pull ../r2 | ||||
pulling from ../r2 | ||||
searching for changes | ||||
adding changesets | ||||
adding manifests | ||||
adding file changes | ||||
added 1 changesets with 1 changes to 1 files (+1 heads) | ||||
(run 'hg heads' to see heads, 'hg merge' to merge) | ||||
$ hg merge | ||||
2 files updated, 0 files merged, 1 files removed, 0 files unresolved | ||||
(branch merge, don't forget to commit) | ||||
$ hg st -C | ||||
M b/f | ||||
A b/aa/g | ||||
a/aa/g | ||||
R a/aa/g | ||||
R a/f | ||||
Mads Kiilerich
|
r16913 | |||
$ cd .. | ||||