annotate tests/test-merge9 @ 5483:0c43f87baba3 default tip

Fix file-changed-to-dir and dir-to-file commits (issue660). Allow adding to dirstate files that clash with previously existing but marked for removal. Protect from reintroducing clashes by revert. This change doesn't address related issues with update. Current workaround is to do "clean" update by manually removing conflicting files/dirs from working directory.
author Maxim Dounin <mdounin@mdounin.ru>
date Sat, 27 Oct 2007 16:27:55 +0400
parents dc5920ea12f8
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
4681
dc5920ea12f8 merge: fix small bug with a failed merge across a rename
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
1 #!/bin/sh
dc5920ea12f8 merge: fix small bug with a failed merge across a rename
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
2
dc5920ea12f8 merge: fix small bug with a failed merge across a rename
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
3 # test that we don't interrupt the merge session if
dc5920ea12f8 merge: fix small bug with a failed merge across a rename
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
4 # a file-level merge failed
dc5920ea12f8 merge: fix small bug with a failed merge across a rename
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
5
dc5920ea12f8 merge: fix small bug with a failed merge across a rename
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
6 hg init repo
dc5920ea12f8 merge: fix small bug with a failed merge across a rename
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
7 cd repo
dc5920ea12f8 merge: fix small bug with a failed merge across a rename
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
8
dc5920ea12f8 merge: fix small bug with a failed merge across a rename
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
9 echo foo > foo
dc5920ea12f8 merge: fix small bug with a failed merge across a rename
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
10 echo a > bar
dc5920ea12f8 merge: fix small bug with a failed merge across a rename
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
11 hg ci -Am 'add foo' -d '0 0'
dc5920ea12f8 merge: fix small bug with a failed merge across a rename
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
12
dc5920ea12f8 merge: fix small bug with a failed merge across a rename
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
13 hg mv foo baz
dc5920ea12f8 merge: fix small bug with a failed merge across a rename
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
14 echo b >> bar
dc5920ea12f8 merge: fix small bug with a failed merge across a rename
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
15 echo quux > quux1
dc5920ea12f8 merge: fix small bug with a failed merge across a rename
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
16 hg ci -Am 'mv foo baz' -d '0 0'
dc5920ea12f8 merge: fix small bug with a failed merge across a rename
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
17
dc5920ea12f8 merge: fix small bug with a failed merge across a rename
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
18 hg up -qC 0
dc5920ea12f8 merge: fix small bug with a failed merge across a rename
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
19 echo >> foo
dc5920ea12f8 merge: fix small bug with a failed merge across a rename
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
20 echo c >> bar
dc5920ea12f8 merge: fix small bug with a failed merge across a rename
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
21 echo quux > quux2
dc5920ea12f8 merge: fix small bug with a failed merge across a rename
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
22 hg ci -Am 'change foo' -d '0 0'
dc5920ea12f8 merge: fix small bug with a failed merge across a rename
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
23
dc5920ea12f8 merge: fix small bug with a failed merge across a rename
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
24 # test with the rename on the remote side
dc5920ea12f8 merge: fix small bug with a failed merge across a rename
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
25 HGMERGE=false hg merge
dc5920ea12f8 merge: fix small bug with a failed merge across a rename
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
26
dc5920ea12f8 merge: fix small bug with a failed merge across a rename
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
27 # test with the rename on the local side
dc5920ea12f8 merge: fix small bug with a failed merge across a rename
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
28 hg up -C 1
dc5920ea12f8 merge: fix small bug with a failed merge across a rename
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
29 HGMERGE=false hg merge
dc5920ea12f8 merge: fix small bug with a failed merge across a rename
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
30
dc5920ea12f8 merge: fix small bug with a failed merge across a rename
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
31 true