author | Martin von Zweigbergk <martinvonz@google.com> |
Thu, 15 Jun 2017 14:47:18 -0700 | |
changeset 32844 | 76bb53f8d374 |
parent 30332 | 318a24b52eeb |
child 33032 | 8e3021fd1a44 |
child 33141 | e9d325cfe071 |
permissions | -rw-r--r-- |
19764
e92650e39f1c
generaldelta: initialize basecache properly
Wojciech Lopata <lopek@fb.com>
parents:
diff
changeset
|
1 |
Check whether size of generaldelta revlog is not bigger than its |
e92650e39f1c
generaldelta: initialize basecache properly
Wojciech Lopata <lopek@fb.com>
parents:
diff
changeset
|
2 |
regular equivalent. Test would fail if generaldelta was naive |
e92650e39f1c
generaldelta: initialize basecache properly
Wojciech Lopata <lopek@fb.com>
parents:
diff
changeset
|
3 |
implementation of parentdelta: third manifest revision would be fully |
e92650e39f1c
generaldelta: initialize basecache properly
Wojciech Lopata <lopek@fb.com>
parents:
diff
changeset
|
4 |
inserted due to big distance from its paren revision (zero). |
e92650e39f1c
generaldelta: initialize basecache properly
Wojciech Lopata <lopek@fb.com>
parents:
diff
changeset
|
5 |
|
26913
f43689badeff
test: enforce non-generaldelta base repository in 'test-generaldelta'
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26907
diff
changeset
|
6 |
$ hg init repo --config format.generaldelta=no --config format.usegeneraldelta=no |
19764
e92650e39f1c
generaldelta: initialize basecache properly
Wojciech Lopata <lopek@fb.com>
parents:
diff
changeset
|
7 |
$ cd repo |
e92650e39f1c
generaldelta: initialize basecache properly
Wojciech Lopata <lopek@fb.com>
parents:
diff
changeset
|
8 |
$ echo foo > foo |
e92650e39f1c
generaldelta: initialize basecache properly
Wojciech Lopata <lopek@fb.com>
parents:
diff
changeset
|
9 |
$ echo bar > bar |
27190
762fbd28e7df
test: use a bigger manifest in general delta test
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26913
diff
changeset
|
10 |
$ echo baz > baz |
19764
e92650e39f1c
generaldelta: initialize basecache properly
Wojciech Lopata <lopek@fb.com>
parents:
diff
changeset
|
11 |
$ hg commit -q -Am boo |
e92650e39f1c
generaldelta: initialize basecache properly
Wojciech Lopata <lopek@fb.com>
parents:
diff
changeset
|
12 |
$ hg clone --pull . ../gdrepo -q --config format.generaldelta=yes |
e92650e39f1c
generaldelta: initialize basecache properly
Wojciech Lopata <lopek@fb.com>
parents:
diff
changeset
|
13 |
$ for r in 1 2 3; do |
e92650e39f1c
generaldelta: initialize basecache properly
Wojciech Lopata <lopek@fb.com>
parents:
diff
changeset
|
14 |
> echo $r > foo |
e92650e39f1c
generaldelta: initialize basecache properly
Wojciech Lopata <lopek@fb.com>
parents:
diff
changeset
|
15 |
> hg commit -q -m $r |
e92650e39f1c
generaldelta: initialize basecache properly
Wojciech Lopata <lopek@fb.com>
parents:
diff
changeset
|
16 |
> hg up -q -r 0 |
e92650e39f1c
generaldelta: initialize basecache properly
Wojciech Lopata <lopek@fb.com>
parents:
diff
changeset
|
17 |
> hg pull . -q -r $r -R ../gdrepo |
e92650e39f1c
generaldelta: initialize basecache properly
Wojciech Lopata <lopek@fb.com>
parents:
diff
changeset
|
18 |
> done |
19942
2c886dedd902
tests: move generaldelta test to inline python (issue4064)
Matt Mackall <mpm@selenic.com>
parents:
19888
diff
changeset
|
19 |
|
19764
e92650e39f1c
generaldelta: initialize basecache properly
Wojciech Lopata <lopek@fb.com>
parents:
diff
changeset
|
20 |
$ cd .. |
29485
6a98f9408a50
py3: make files use absolute_import and print_function
Pulkit Goyal <7895pulkit@gmail.com>
parents:
27251
diff
changeset
|
21 |
>>> from __future__ import print_function |
19942
2c886dedd902
tests: move generaldelta test to inline python (issue4064)
Matt Mackall <mpm@selenic.com>
parents:
19888
diff
changeset
|
22 |
>>> import os |
2c886dedd902
tests: move generaldelta test to inline python (issue4064)
Matt Mackall <mpm@selenic.com>
parents:
19888
diff
changeset
|
23 |
>>> regsize = os.stat("repo/.hg/store/00manifest.i").st_size |
2c886dedd902
tests: move generaldelta test to inline python (issue4064)
Matt Mackall <mpm@selenic.com>
parents:
19888
diff
changeset
|
24 |
>>> gdsize = os.stat("gdrepo/.hg/store/00manifest.i").st_size |
2c886dedd902
tests: move generaldelta test to inline python (issue4064)
Matt Mackall <mpm@selenic.com>
parents:
19888
diff
changeset
|
25 |
>>> if regsize < gdsize: |
29485
6a98f9408a50
py3: make files use absolute_import and print_function
Pulkit Goyal <7895pulkit@gmail.com>
parents:
27251
diff
changeset
|
26 |
... print('generaldata increased size of manifest') |
23381
cc0ff93d0c0c
changegroup: fix file linkrevs during reorders (issue4462)
Durham Goode <durham@fb.com>
parents:
19942
diff
changeset
|
27 |
|
cc0ff93d0c0c
changegroup: fix file linkrevs during reorders (issue4462)
Durham Goode <durham@fb.com>
parents:
19942
diff
changeset
|
28 |
Verify rev reordering doesnt create invalid bundles (issue4462) |
cc0ff93d0c0c
changegroup: fix file linkrevs during reorders (issue4462)
Durham Goode <durham@fb.com>
parents:
19942
diff
changeset
|
29 |
This requires a commit tree that when pulled will reorder manifest revs such |
cc0ff93d0c0c
changegroup: fix file linkrevs during reorders (issue4462)
Durham Goode <durham@fb.com>
parents:
19942
diff
changeset
|
30 |
that the second manifest to create a file rev will be ordered before the first |
cc0ff93d0c0c
changegroup: fix file linkrevs during reorders (issue4462)
Durham Goode <durham@fb.com>
parents:
19942
diff
changeset
|
31 |
manifest to create that file rev. We also need to do a partial pull to ensure |
cc0ff93d0c0c
changegroup: fix file linkrevs during reorders (issue4462)
Durham Goode <durham@fb.com>
parents:
19942
diff
changeset
|
32 |
reordering happens. At the end we verify the linkrev points at the earliest |
cc0ff93d0c0c
changegroup: fix file linkrevs during reorders (issue4462)
Durham Goode <durham@fb.com>
parents:
19942
diff
changeset
|
33 |
commit. |
cc0ff93d0c0c
changegroup: fix file linkrevs during reorders (issue4462)
Durham Goode <durham@fb.com>
parents:
19942
diff
changeset
|
34 |
|
cc0ff93d0c0c
changegroup: fix file linkrevs during reorders (issue4462)
Durham Goode <durham@fb.com>
parents:
19942
diff
changeset
|
35 |
$ hg init server --config format.generaldelta=True |
cc0ff93d0c0c
changegroup: fix file linkrevs during reorders (issue4462)
Durham Goode <durham@fb.com>
parents:
19942
diff
changeset
|
36 |
$ cd server |
cc0ff93d0c0c
changegroup: fix file linkrevs during reorders (issue4462)
Durham Goode <durham@fb.com>
parents:
19942
diff
changeset
|
37 |
$ touch a |
cc0ff93d0c0c
changegroup: fix file linkrevs during reorders (issue4462)
Durham Goode <durham@fb.com>
parents:
19942
diff
changeset
|
38 |
$ hg commit -Aqm a |
cc0ff93d0c0c
changegroup: fix file linkrevs during reorders (issue4462)
Durham Goode <durham@fb.com>
parents:
19942
diff
changeset
|
39 |
$ echo x > x |
cc0ff93d0c0c
changegroup: fix file linkrevs during reorders (issue4462)
Durham Goode <durham@fb.com>
parents:
19942
diff
changeset
|
40 |
$ echo y > y |
cc0ff93d0c0c
changegroup: fix file linkrevs during reorders (issue4462)
Durham Goode <durham@fb.com>
parents:
19942
diff
changeset
|
41 |
$ hg commit -Aqm xy |
cc0ff93d0c0c
changegroup: fix file linkrevs during reorders (issue4462)
Durham Goode <durham@fb.com>
parents:
19942
diff
changeset
|
42 |
$ hg up -q '.^' |
cc0ff93d0c0c
changegroup: fix file linkrevs during reorders (issue4462)
Durham Goode <durham@fb.com>
parents:
19942
diff
changeset
|
43 |
$ echo x > x |
cc0ff93d0c0c
changegroup: fix file linkrevs during reorders (issue4462)
Durham Goode <durham@fb.com>
parents:
19942
diff
changeset
|
44 |
$ echo z > z |
cc0ff93d0c0c
changegroup: fix file linkrevs during reorders (issue4462)
Durham Goode <durham@fb.com>
parents:
19942
diff
changeset
|
45 |
$ hg commit -Aqm xz |
cc0ff93d0c0c
changegroup: fix file linkrevs during reorders (issue4462)
Durham Goode <durham@fb.com>
parents:
19942
diff
changeset
|
46 |
$ hg up -q 1 |
cc0ff93d0c0c
changegroup: fix file linkrevs during reorders (issue4462)
Durham Goode <durham@fb.com>
parents:
19942
diff
changeset
|
47 |
$ echo b > b |
cc0ff93d0c0c
changegroup: fix file linkrevs during reorders (issue4462)
Durham Goode <durham@fb.com>
parents:
19942
diff
changeset
|
48 |
$ hg commit -Aqm b |
cc0ff93d0c0c
changegroup: fix file linkrevs during reorders (issue4462)
Durham Goode <durham@fb.com>
parents:
19942
diff
changeset
|
49 |
$ hg merge -q 2 |
cc0ff93d0c0c
changegroup: fix file linkrevs during reorders (issue4462)
Durham Goode <durham@fb.com>
parents:
19942
diff
changeset
|
50 |
$ hg commit -Aqm merge |
cc0ff93d0c0c
changegroup: fix file linkrevs during reorders (issue4462)
Durham Goode <durham@fb.com>
parents:
19942
diff
changeset
|
51 |
$ echo c > c |
cc0ff93d0c0c
changegroup: fix file linkrevs during reorders (issue4462)
Durham Goode <durham@fb.com>
parents:
19942
diff
changeset
|
52 |
$ hg commit -Aqm c |
cc0ff93d0c0c
changegroup: fix file linkrevs during reorders (issue4462)
Durham Goode <durham@fb.com>
parents:
19942
diff
changeset
|
53 |
$ hg log -G -T '{rev} {shortest(node)} {desc}' |
cc0ff93d0c0c
changegroup: fix file linkrevs during reorders (issue4462)
Durham Goode <durham@fb.com>
parents:
19942
diff
changeset
|
54 |
@ 5 ebb8 c |
cc0ff93d0c0c
changegroup: fix file linkrevs during reorders (issue4462)
Durham Goode <durham@fb.com>
parents:
19942
diff
changeset
|
55 |
| |
cc0ff93d0c0c
changegroup: fix file linkrevs during reorders (issue4462)
Durham Goode <durham@fb.com>
parents:
19942
diff
changeset
|
56 |
o 4 baf7 merge |
cc0ff93d0c0c
changegroup: fix file linkrevs during reorders (issue4462)
Durham Goode <durham@fb.com>
parents:
19942
diff
changeset
|
57 |
|\ |
cc0ff93d0c0c
changegroup: fix file linkrevs during reorders (issue4462)
Durham Goode <durham@fb.com>
parents:
19942
diff
changeset
|
58 |
| o 3 a129 b |
cc0ff93d0c0c
changegroup: fix file linkrevs during reorders (issue4462)
Durham Goode <durham@fb.com>
parents:
19942
diff
changeset
|
59 |
| | |
cc0ff93d0c0c
changegroup: fix file linkrevs during reorders (issue4462)
Durham Goode <durham@fb.com>
parents:
19942
diff
changeset
|
60 |
o | 2 958c xz |
cc0ff93d0c0c
changegroup: fix file linkrevs during reorders (issue4462)
Durham Goode <durham@fb.com>
parents:
19942
diff
changeset
|
61 |
| | |
cc0ff93d0c0c
changegroup: fix file linkrevs during reorders (issue4462)
Durham Goode <durham@fb.com>
parents:
19942
diff
changeset
|
62 |
| o 1 f00c xy |
cc0ff93d0c0c
changegroup: fix file linkrevs during reorders (issue4462)
Durham Goode <durham@fb.com>
parents:
19942
diff
changeset
|
63 |
|/ |
cc0ff93d0c0c
changegroup: fix file linkrevs during reorders (issue4462)
Durham Goode <durham@fb.com>
parents:
19942
diff
changeset
|
64 |
o 0 3903 a |
cc0ff93d0c0c
changegroup: fix file linkrevs during reorders (issue4462)
Durham Goode <durham@fb.com>
parents:
19942
diff
changeset
|
65 |
|
cc0ff93d0c0c
changegroup: fix file linkrevs during reorders (issue4462)
Durham Goode <durham@fb.com>
parents:
19942
diff
changeset
|
66 |
$ cd .. |
26913
f43689badeff
test: enforce non-generaldelta base repository in 'test-generaldelta'
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26907
diff
changeset
|
67 |
$ hg init client --config format.generaldelta=false --config format.usegeneraldelta=false |
23381
cc0ff93d0c0c
changegroup: fix file linkrevs during reorders (issue4462)
Durham Goode <durham@fb.com>
parents:
19942
diff
changeset
|
68 |
$ cd client |
cc0ff93d0c0c
changegroup: fix file linkrevs during reorders (issue4462)
Durham Goode <durham@fb.com>
parents:
19942
diff
changeset
|
69 |
$ hg pull -q ../server -r 4 |
cc0ff93d0c0c
changegroup: fix file linkrevs during reorders (issue4462)
Durham Goode <durham@fb.com>
parents:
19942
diff
changeset
|
70 |
$ hg debugindex x |
cc0ff93d0c0c
changegroup: fix file linkrevs during reorders (issue4462)
Durham Goode <durham@fb.com>
parents:
19942
diff
changeset
|
71 |
rev offset length base linkrev nodeid p1 p2 |
cc0ff93d0c0c
changegroup: fix file linkrevs during reorders (issue4462)
Durham Goode <durham@fb.com>
parents:
19942
diff
changeset
|
72 |
0 0 3 0 1 1406e7411862 000000000000 000000000000 |
cc0ff93d0c0c
changegroup: fix file linkrevs during reorders (issue4462)
Durham Goode <durham@fb.com>
parents:
19942
diff
changeset
|
73 |
|
26118
049005de325e
revlog: add an aggressivemergedelta option
Durham Goode <durham@fb.com>
parents:
23381
diff
changeset
|
74 |
$ cd .. |
049005de325e
revlog: add an aggressivemergedelta option
Durham Goode <durham@fb.com>
parents:
23381
diff
changeset
|
75 |
|
26907
dfab6edb98e3
format: introduce 'format.usegeneraldelta`
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26866
diff
changeset
|
76 |
Test "usegeneraldelta" config |
30332
318a24b52eeb
spelling: fixes of non-dictionary words
Mads Kiilerich <madski@unity3d.com>
parents:
29593
diff
changeset
|
77 |
(repo are general delta, but incoming bundle are not re-deltafied) |
26907
dfab6edb98e3
format: introduce 'format.usegeneraldelta`
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26866
diff
changeset
|
78 |
|
dfab6edb98e3
format: introduce 'format.usegeneraldelta`
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26866
diff
changeset
|
79 |
delta coming from the server base delta server are not recompressed. |
dfab6edb98e3
format: introduce 'format.usegeneraldelta`
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26866
diff
changeset
|
80 |
(also include the aggressive version for comparison) |
dfab6edb98e3
format: introduce 'format.usegeneraldelta`
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26866
diff
changeset
|
81 |
|
dfab6edb98e3
format: introduce 'format.usegeneraldelta`
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26866
diff
changeset
|
82 |
$ hg clone repo --pull --config format.usegeneraldelta=1 usegd |
dfab6edb98e3
format: introduce 'format.usegeneraldelta`
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26866
diff
changeset
|
83 |
requesting all changes |
dfab6edb98e3
format: introduce 'format.usegeneraldelta`
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26866
diff
changeset
|
84 |
adding changesets |
dfab6edb98e3
format: introduce 'format.usegeneraldelta`
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26866
diff
changeset
|
85 |
adding manifests |
dfab6edb98e3
format: introduce 'format.usegeneraldelta`
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26866
diff
changeset
|
86 |
adding file changes |
27190
762fbd28e7df
test: use a bigger manifest in general delta test
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26913
diff
changeset
|
87 |
added 4 changesets with 6 changes to 3 files (+2 heads) |
26907
dfab6edb98e3
format: introduce 'format.usegeneraldelta`
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26866
diff
changeset
|
88 |
updating to branch default |
27190
762fbd28e7df
test: use a bigger manifest in general delta test
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26913
diff
changeset
|
89 |
3 files updated, 0 files merged, 0 files removed, 0 files unresolved |
26907
dfab6edb98e3
format: introduce 'format.usegeneraldelta`
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26866
diff
changeset
|
90 |
$ hg clone repo --pull --config format.generaldelta=1 full |
dfab6edb98e3
format: introduce 'format.usegeneraldelta`
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26866
diff
changeset
|
91 |
requesting all changes |
dfab6edb98e3
format: introduce 'format.usegeneraldelta`
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26866
diff
changeset
|
92 |
adding changesets |
dfab6edb98e3
format: introduce 'format.usegeneraldelta`
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26866
diff
changeset
|
93 |
adding manifests |
dfab6edb98e3
format: introduce 'format.usegeneraldelta`
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26866
diff
changeset
|
94 |
adding file changes |
27190
762fbd28e7df
test: use a bigger manifest in general delta test
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26913
diff
changeset
|
95 |
added 4 changesets with 6 changes to 3 files (+2 heads) |
26907
dfab6edb98e3
format: introduce 'format.usegeneraldelta`
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26866
diff
changeset
|
96 |
updating to branch default |
27190
762fbd28e7df
test: use a bigger manifest in general delta test
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26913
diff
changeset
|
97 |
3 files updated, 0 files merged, 0 files removed, 0 files unresolved |
26907
dfab6edb98e3
format: introduce 'format.usegeneraldelta`
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26866
diff
changeset
|
98 |
$ hg -R repo debugindex -m |
dfab6edb98e3
format: introduce 'format.usegeneraldelta`
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26866
diff
changeset
|
99 |
rev offset length base linkrev nodeid p1 p2 |
27190
762fbd28e7df
test: use a bigger manifest in general delta test
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26913
diff
changeset
|
100 |
0 0 104 0 0 cef96823c800 000000000000 000000000000 |
762fbd28e7df
test: use a bigger manifest in general delta test
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26913
diff
changeset
|
101 |
1 104 57 0 1 58ab9a8d541d cef96823c800 000000000000 |
762fbd28e7df
test: use a bigger manifest in general delta test
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26913
diff
changeset
|
102 |
2 161 57 0 2 134fdc6fd680 cef96823c800 000000000000 |
762fbd28e7df
test: use a bigger manifest in general delta test
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26913
diff
changeset
|
103 |
3 218 104 3 3 723508934dad cef96823c800 000000000000 |
26907
dfab6edb98e3
format: introduce 'format.usegeneraldelta`
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26866
diff
changeset
|
104 |
$ hg -R usegd debugindex -m |
dfab6edb98e3
format: introduce 'format.usegeneraldelta`
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26866
diff
changeset
|
105 |
rev offset length delta linkrev nodeid p1 p2 |
27190
762fbd28e7df
test: use a bigger manifest in general delta test
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26913
diff
changeset
|
106 |
0 0 104 -1 0 cef96823c800 000000000000 000000000000 |
762fbd28e7df
test: use a bigger manifest in general delta test
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26913
diff
changeset
|
107 |
1 104 57 0 1 58ab9a8d541d cef96823c800 000000000000 |
762fbd28e7df
test: use a bigger manifest in general delta test
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26913
diff
changeset
|
108 |
2 161 57 1 2 134fdc6fd680 cef96823c800 000000000000 |
27191
20a9226bdc8a
addrevision: use general delta when the incoming base delta is bad
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
27190
diff
changeset
|
109 |
3 218 57 0 3 723508934dad cef96823c800 000000000000 |
26907
dfab6edb98e3
format: introduce 'format.usegeneraldelta`
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26866
diff
changeset
|
110 |
$ hg -R full debugindex -m |
dfab6edb98e3
format: introduce 'format.usegeneraldelta`
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26866
diff
changeset
|
111 |
rev offset length delta linkrev nodeid p1 p2 |
27190
762fbd28e7df
test: use a bigger manifest in general delta test
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26913
diff
changeset
|
112 |
0 0 104 -1 0 cef96823c800 000000000000 000000000000 |
762fbd28e7df
test: use a bigger manifest in general delta test
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26913
diff
changeset
|
113 |
1 104 57 0 1 58ab9a8d541d cef96823c800 000000000000 |
762fbd28e7df
test: use a bigger manifest in general delta test
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26913
diff
changeset
|
114 |
2 161 57 0 2 134fdc6fd680 cef96823c800 000000000000 |
762fbd28e7df
test: use a bigger manifest in general delta test
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26913
diff
changeset
|
115 |
3 218 57 0 3 723508934dad cef96823c800 000000000000 |
26907
dfab6edb98e3
format: introduce 'format.usegeneraldelta`
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26866
diff
changeset
|
116 |
|
26118
049005de325e
revlog: add an aggressivemergedelta option
Durham Goode <durham@fb.com>
parents:
23381
diff
changeset
|
117 |
Test format.aggressivemergedeltas |
049005de325e
revlog: add an aggressivemergedelta option
Durham Goode <durham@fb.com>
parents:
23381
diff
changeset
|
118 |
|
049005de325e
revlog: add an aggressivemergedelta option
Durham Goode <durham@fb.com>
parents:
23381
diff
changeset
|
119 |
$ hg init --config format.generaldelta=1 aggressive |
049005de325e
revlog: add an aggressivemergedelta option
Durham Goode <durham@fb.com>
parents:
23381
diff
changeset
|
120 |
$ cd aggressive |
26907
dfab6edb98e3
format: introduce 'format.usegeneraldelta`
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26866
diff
changeset
|
121 |
$ cat << EOF >> .hg/hgrc |
dfab6edb98e3
format: introduce 'format.usegeneraldelta`
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26866
diff
changeset
|
122 |
> [format] |
dfab6edb98e3
format: introduce 'format.usegeneraldelta`
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26866
diff
changeset
|
123 |
> generaldelta = 1 |
dfab6edb98e3
format: introduce 'format.usegeneraldelta`
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26866
diff
changeset
|
124 |
> EOF |
26118
049005de325e
revlog: add an aggressivemergedelta option
Durham Goode <durham@fb.com>
parents:
23381
diff
changeset
|
125 |
$ touch a b c d e |
049005de325e
revlog: add an aggressivemergedelta option
Durham Goode <durham@fb.com>
parents:
23381
diff
changeset
|
126 |
$ hg commit -Aqm side1 |
049005de325e
revlog: add an aggressivemergedelta option
Durham Goode <durham@fb.com>
parents:
23381
diff
changeset
|
127 |
$ hg up -q null |
049005de325e
revlog: add an aggressivemergedelta option
Durham Goode <durham@fb.com>
parents:
23381
diff
changeset
|
128 |
$ touch x y |
049005de325e
revlog: add an aggressivemergedelta option
Durham Goode <durham@fb.com>
parents:
23381
diff
changeset
|
129 |
$ hg commit -Aqm side2 |
049005de325e
revlog: add an aggressivemergedelta option
Durham Goode <durham@fb.com>
parents:
23381
diff
changeset
|
130 |
|
049005de325e
revlog: add an aggressivemergedelta option
Durham Goode <durham@fb.com>
parents:
23381
diff
changeset
|
131 |
- Verify non-aggressive merge uses p1 (commit 1) as delta parent |
049005de325e
revlog: add an aggressivemergedelta option
Durham Goode <durham@fb.com>
parents:
23381
diff
changeset
|
132 |
$ hg merge -q 0 |
049005de325e
revlog: add an aggressivemergedelta option
Durham Goode <durham@fb.com>
parents:
23381
diff
changeset
|
133 |
$ hg commit -q -m merge |
049005de325e
revlog: add an aggressivemergedelta option
Durham Goode <durham@fb.com>
parents:
23381
diff
changeset
|
134 |
$ hg debugindex -m |
049005de325e
revlog: add an aggressivemergedelta option
Durham Goode <durham@fb.com>
parents:
23381
diff
changeset
|
135 |
rev offset length delta linkrev nodeid p1 p2 |
049005de325e
revlog: add an aggressivemergedelta option
Durham Goode <durham@fb.com>
parents:
23381
diff
changeset
|
136 |
0 0 59 -1 0 8dde941edb6e 000000000000 000000000000 |
27251
d9bfe6289acf
revlog: don't consider nullrev when choosing delta base
Martin von Zweigbergk <martinvonz@google.com>
parents:
27191
diff
changeset
|
137 |
1 59 61 0 1 315c023f341d 000000000000 000000000000 |
d9bfe6289acf
revlog: don't consider nullrev when choosing delta base
Martin von Zweigbergk <martinvonz@google.com>
parents:
27191
diff
changeset
|
138 |
2 120 65 1 2 2ab389a983eb 315c023f341d 8dde941edb6e |
26118
049005de325e
revlog: add an aggressivemergedelta option
Durham Goode <durham@fb.com>
parents:
23381
diff
changeset
|
139 |
|
049005de325e
revlog: add an aggressivemergedelta option
Durham Goode <durham@fb.com>
parents:
23381
diff
changeset
|
140 |
$ hg strip -q -r . --config extensions.strip= |
049005de325e
revlog: add an aggressivemergedelta option
Durham Goode <durham@fb.com>
parents:
23381
diff
changeset
|
141 |
|
049005de325e
revlog: add an aggressivemergedelta option
Durham Goode <durham@fb.com>
parents:
23381
diff
changeset
|
142 |
- Verify aggressive merge uses p2 (commit 0) as delta parent |
049005de325e
revlog: add an aggressivemergedelta option
Durham Goode <durham@fb.com>
parents:
23381
diff
changeset
|
143 |
$ hg up -q -C 1 |
049005de325e
revlog: add an aggressivemergedelta option
Durham Goode <durham@fb.com>
parents:
23381
diff
changeset
|
144 |
$ hg merge -q 0 |
049005de325e
revlog: add an aggressivemergedelta option
Durham Goode <durham@fb.com>
parents:
23381
diff
changeset
|
145 |
$ hg commit -q -m merge --config format.aggressivemergedeltas=True |
049005de325e
revlog: add an aggressivemergedelta option
Durham Goode <durham@fb.com>
parents:
23381
diff
changeset
|
146 |
$ hg debugindex -m |
049005de325e
revlog: add an aggressivemergedelta option
Durham Goode <durham@fb.com>
parents:
23381
diff
changeset
|
147 |
rev offset length delta linkrev nodeid p1 p2 |
049005de325e
revlog: add an aggressivemergedelta option
Durham Goode <durham@fb.com>
parents:
23381
diff
changeset
|
148 |
0 0 59 -1 0 8dde941edb6e 000000000000 000000000000 |
27251
d9bfe6289acf
revlog: don't consider nullrev when choosing delta base
Martin von Zweigbergk <martinvonz@google.com>
parents:
27191
diff
changeset
|
149 |
1 59 61 0 1 315c023f341d 000000000000 000000000000 |
d9bfe6289acf
revlog: don't consider nullrev when choosing delta base
Martin von Zweigbergk <martinvonz@google.com>
parents:
27191
diff
changeset
|
150 |
2 120 62 0 2 2ab389a983eb 315c023f341d 8dde941edb6e |
26118
049005de325e
revlog: add an aggressivemergedelta option
Durham Goode <durham@fb.com>
parents:
23381
diff
changeset
|
151 |
|
26423
c93f91c1db1c
strip: use bundle2 + cg2 by default when repository use general delta
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26118
diff
changeset
|
152 |
Test that strip bundle use bundle2 |
c93f91c1db1c
strip: use bundle2 + cg2 by default when repository use general delta
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26118
diff
changeset
|
153 |
$ hg --config extensions.strip= strip . |
c93f91c1db1c
strip: use bundle2 + cg2 by default when repository use general delta
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26118
diff
changeset
|
154 |
0 files updated, 0 files merged, 5 files removed, 0 files unresolved |
c93f91c1db1c
strip: use bundle2 + cg2 by default when repository use general delta
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26118
diff
changeset
|
155 |
saved backup bundle to $TESTTMP/aggressive/.hg/strip-backup/1c5d4dc9a8b8-6c68e60c-backup.hg (glob) |
c93f91c1db1c
strip: use bundle2 + cg2 by default when repository use general delta
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26118
diff
changeset
|
156 |
$ hg debugbundle .hg/strip-backup/* |
29592
37cccad55410
util: implement a deterministic __repr__ on sortdict
Gregory Szorc <gregory.szorc@gmail.com>
parents:
29485
diff
changeset
|
157 |
Stream params: sortdict([('Compression', 'BZ')]) |
29593
953839de96ab
bundle2: store changeset count when creating file bundles
Gregory Szorc <gregory.szorc@gmail.com>
parents:
29592
diff
changeset
|
158 |
changegroup -- "sortdict([('version', '02'), ('nbchanges', '1')])" |
26423
c93f91c1db1c
strip: use bundle2 + cg2 by default when repository use general delta
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26118
diff
changeset
|
159 |
1c5d4dc9a8b8d6e1750966d343e94db665e7a1e9 |
c93f91c1db1c
strip: use bundle2 + cg2 by default when repository use general delta
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26118
diff
changeset
|
160 |
|
26118
049005de325e
revlog: add an aggressivemergedelta option
Durham Goode <durham@fb.com>
parents:
23381
diff
changeset
|
161 |
$ cd .. |