Mercurial > hg
annotate tests/test-merge-force.t @ 16363:2cdd7e63211b
parsers: incrementally parse the revlog index in C
We only parse entries in a revlog index file when they are actually
needed, and cache them when first requested.
This makes a huge difference to performance on large revlogs when
accessing the tip revision or performing a handful of numeric lookups
(very common cases). For instance, "hg --time tip --template {node}"
on a tree with 300,000 revs takes 0.15 before, 0.02 after.
Even for revlog-intensive operations (e.g. running "hg log" to
completion), the lazy approach is about 1% faster than the eager
parse_index2.
author | Bryan O'Sullivan <bryano@fb.com> |
---|---|
date | Thu, 05 Apr 2012 13:00:35 -0700 |
parents | 6c8573dd1b6b |
children | 94c394653b2a |
rev | line source |
---|---|
12256
2a06cb547be8
tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents:
6256
diff
changeset
|
1 $ hg init |
6255
ae83d927c629
add a test for a375ffc2aa1b
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
2 |
12256
2a06cb547be8
tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents:
6256
diff
changeset
|
3 $ echo a > a |
2a06cb547be8
tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents:
6256
diff
changeset
|
4 $ hg ci -qAm 'add a' |
2a06cb547be8
tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents:
6256
diff
changeset
|
5 |
2a06cb547be8
tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents:
6256
diff
changeset
|
6 $ echo b > b |
2a06cb547be8
tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents:
6256
diff
changeset
|
7 $ hg ci -qAm 'add b' |
6255
ae83d927c629
add a test for a375ffc2aa1b
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
8 |
12256
2a06cb547be8
tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents:
6256
diff
changeset
|
9 $ hg up -qC 0 |
2a06cb547be8
tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents:
6256
diff
changeset
|
10 $ hg rm a |
2a06cb547be8
tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents:
6256
diff
changeset
|
11 $ hg ci -m 'rm a' |
2a06cb547be8
tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents:
6256
diff
changeset
|
12 created new head |
6255
ae83d927c629
add a test for a375ffc2aa1b
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
13 |
12256
2a06cb547be8
tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents:
6256
diff
changeset
|
14 $ hg up -qC 1 |
2a06cb547be8
tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents:
6256
diff
changeset
|
15 $ rm a |
2a06cb547be8
tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents:
6256
diff
changeset
|
16 |
2a06cb547be8
tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents:
6256
diff
changeset
|
17 Local deleted a file, remote removed |
2a06cb547be8
tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents:
6256
diff
changeset
|
18 |
2a06cb547be8
tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents:
6256
diff
changeset
|
19 Should fail, since there are deleted files: |
6255
ae83d927c629
add a test for a375ffc2aa1b
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
20 |
12256
2a06cb547be8
tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents:
6256
diff
changeset
|
21 $ hg merge |
15619
6c8573dd1b6b
merge: make 'nothing to merge' aborts consistent
Kevin Bullock <kbullock@ringworld.org>
parents:
12316
diff
changeset
|
22 abort: outstanding uncommitted changes |
6c8573dd1b6b
merge: make 'nothing to merge' aborts consistent
Kevin Bullock <kbullock@ringworld.org>
parents:
12316
diff
changeset
|
23 (use 'hg status' to list changes) |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12256
diff
changeset
|
24 [255] |
12256
2a06cb547be8
tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents:
6256
diff
changeset
|
25 |
2a06cb547be8
tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents:
6256
diff
changeset
|
26 Should succeed with --force: |
6255
ae83d927c629
add a test for a375ffc2aa1b
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
27 |
12256
2a06cb547be8
tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents:
6256
diff
changeset
|
28 $ hg -v merge --force |
2a06cb547be8
tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents:
6256
diff
changeset
|
29 resolving manifests |
2a06cb547be8
tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents:
6256
diff
changeset
|
30 removing a |
2a06cb547be8
tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents:
6256
diff
changeset
|
31 0 files updated, 0 files merged, 1 files removed, 0 files unresolved |
2a06cb547be8
tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents:
6256
diff
changeset
|
32 (branch merge, don't forget to commit) |
6255
ae83d927c629
add a test for a375ffc2aa1b
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
33 |
12256
2a06cb547be8
tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents:
6256
diff
changeset
|
34 Should show 'a' as removed: |
2a06cb547be8
tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents:
6256
diff
changeset
|
35 |
2a06cb547be8
tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents:
6256
diff
changeset
|
36 $ hg status |
2a06cb547be8
tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents:
6256
diff
changeset
|
37 R a |
6255
ae83d927c629
add a test for a375ffc2aa1b
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff
changeset
|
38 |
12256
2a06cb547be8
tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents:
6256
diff
changeset
|
39 $ hg ci -m merge |
2a06cb547be8
tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents:
6256
diff
changeset
|
40 |
2a06cb547be8
tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents:
6256
diff
changeset
|
41 Should not show 'a': |
2a06cb547be8
tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents:
6256
diff
changeset
|
42 |
2a06cb547be8
tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents:
6256
diff
changeset
|
43 $ hg manifest |
2a06cb547be8
tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents:
6256
diff
changeset
|
44 b |
2a06cb547be8
tests: unify test-merge-force
Adrian Buehlmann <adrian@cadifra.com>
parents:
6256
diff
changeset
|
45 |