annotate tests/test-pull-update.t @ 18757:1c8e0d6ac3b0 stable

localrepo: always write the filtered phasecache when nodes are destroyed (issue3827) When the strip command is run, it calls repo.destroyed, which in turn checks if we read _phasecache, and if we did calls filterunknown on it and flushes the changes immediately. But in some cases, nothing causes _phasecache to be read, so we miss out on this and the file remains the same on-disk. Then a call to invalidate comes, which should refresh _phasecache if it changed, but it didn't, so it keeps using the old one with the stripped revision which causes an IndexError. Test written by Yuya Nishihara.
author Idan Kamara <idankk86@gmail.com>
date Sat, 23 Mar 2013 13:34:50 +0200
parents f2719b387380
children 76df01e56e7f
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
1 $ hg init t
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
2 $ cd t
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
3 $ echo 1 > foo
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
4 $ hg ci -Am m
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
5 adding foo
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
6
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
7 $ cd ..
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
8 $ hg clone t tt
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
9 updating to branch default
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
10 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
11 $ cd tt
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
12 $ echo 1.1 > foo
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
13 $ hg ci -Am m
5080
73fdc8bd3ed8 Update on pull -u when heads were closed (fixes issue666).
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
14
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
15 $ cd ../t
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
16 $ echo 1.2 > foo
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
17 $ hg ci -Am m
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
18
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
19 Should not update:
5080
73fdc8bd3ed8 Update on pull -u when heads were closed (fixes issue666).
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
20
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
21 $ hg pull -u ../tt
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
22 pulling from ../tt
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
23 searching for changes
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
24 adding changesets
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
25 adding manifests
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
26 adding file changes
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
27 added 1 changesets with 1 changes to 1 files (+1 heads)
14485
610873cf064a Make pull -u behave like pull && update
Brendan Cully <brendan@kublai.com>
parents: 12279
diff changeset
28 not updating: crosses branches (merge branches or update --check to force update)
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
29
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
30 $ cd ../tt
5080
73fdc8bd3ed8 Update on pull -u when heads were closed (fixes issue666).
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
31
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
32 Should not update:
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
33
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
34 $ hg pull -u ../t
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
35 pulling from ../t
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
36 searching for changes
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
37 adding changesets
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
38 adding manifests
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
39 adding file changes
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
40 added 1 changesets with 1 changes to 1 files (+1 heads)
14485
610873cf064a Make pull -u behave like pull && update
Brendan Cully <brendan@kublai.com>
parents: 12279
diff changeset
41 not updating: crosses branches (merge branches or update --check to force update)
5080
73fdc8bd3ed8 Update on pull -u when heads were closed (fixes issue666).
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
42
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
43 $ HGMERGE=true hg merge
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
44 merging foo
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
45 0 files updated, 1 files merged, 0 files removed, 0 files unresolved
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
46 (branch merge, don't forget to commit)
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
47 $ hg ci -mm
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
48
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
49 $ cd ../t
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
50
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
51 Should work:
5080
73fdc8bd3ed8 Update on pull -u when heads were closed (fixes issue666).
Thomas Arendsen Hein <thomas@intevation.de>
parents:
diff changeset
52
12279
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
53 $ hg pull -u ../tt
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
54 pulling from ../tt
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
55 searching for changes
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
56 adding changesets
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
57 adding manifests
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
58 adding file changes
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
59 added 1 changesets with 1 changes to 1 files (-1 heads)
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
60 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
28e2e3804f2e combine tests
Adrian Buehlmann <adrian@cadifra.com>
parents: 5080
diff changeset
61
16913
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 14485
diff changeset
62 $ cd ..