annotate tests/test-rename-merge1 @ 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 c0b449154a90
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
3155
c82ea81d6850 Add core copy detection algorithm
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
1 #!/bin/sh
c82ea81d6850 Add core copy detection algorithm
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
2
c82ea81d6850 Add core copy detection algorithm
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
3 mkdir t
c82ea81d6850 Add core copy detection algorithm
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
4 cd t
c82ea81d6850 Add core copy detection algorithm
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
5 hg init
3257
c93ce7f10f85 merge: fixes for merge+rename
Matt Mackall <mpm@selenic.com>
parents: 3155
diff changeset
6 echo "[merge]" >> .hg/hgrc
c93ce7f10f85 merge: fixes for merge+rename
Matt Mackall <mpm@selenic.com>
parents: 3155
diff changeset
7 echo "followcopies = 1" >> .hg/hgrc
3155
c82ea81d6850 Add core copy detection algorithm
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
8 echo foo > a
c82ea81d6850 Add core copy detection algorithm
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
9 echo foo > a2
c82ea81d6850 Add core copy detection algorithm
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
10 hg add a a2
c82ea81d6850 Add core copy detection algorithm
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
11 hg ci -m "start" -d "0 0"
c82ea81d6850 Add core copy detection algorithm
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
12 hg mv a b
c82ea81d6850 Add core copy detection algorithm
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
13 hg mv a2 b2
c82ea81d6850 Add core copy detection algorithm
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
14 hg ci -m "rename" -d "0 0"
c82ea81d6850 Add core copy detection algorithm
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
15 echo "checkout"
c82ea81d6850 Add core copy detection algorithm
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
16 hg co 0
c82ea81d6850 Add core copy detection algorithm
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
17 echo blahblah > a
c82ea81d6850 Add core copy detection algorithm
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
18 echo blahblah > a2
c82ea81d6850 Add core copy detection algorithm
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
19 hg mv a2 c2
c82ea81d6850 Add core copy detection algorithm
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
20 hg ci -m "modify" -d "0 0"
c82ea81d6850 Add core copy detection algorithm
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
21 echo "merge"
c82ea81d6850 Add core copy detection algorithm
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
22 hg merge -y --debug
3257
c93ce7f10f85 merge: fixes for merge+rename
Matt Mackall <mpm@selenic.com>
parents: 3155
diff changeset
23 hg status -AC
3155
c82ea81d6850 Add core copy detection algorithm
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
24 cat b
c82ea81d6850 Add core copy detection algorithm
Matt Mackall <mpm@selenic.com>
parents:
diff changeset
25 hg ci -m "merge" -d "0 0"
3853
c0b449154a90 switch to the .hg/store layout, fix the tests
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 3295
diff changeset
26 hg debugindex .hg/store/data/b.i
3295
764688cf51e5 merge: remember rename copies and parents properly on commit
Matt Mackall <mpm@selenic.com>
parents: 3257
diff changeset
27 hg debugrename b