test-revlog-v2.t
65 lines
| 1.5 KiB
| text/troff
|
Tads3Lexer
/ tests / test-revlog-v2.t
Gregory Szorc
|
r37363 | #require reporevlogstore | ||
Gregory Szorc
|
r32697 | A repo with unknown revlogv2 requirement string cannot be opened | ||
$ hg init invalidreq | ||||
$ cd invalidreq | ||||
$ echo exp-revlogv2.unknown >> .hg/requires | ||||
$ hg log | ||||
Martin von Zweigbergk
|
r46518 | abort: repository requires features unknown to this Mercurial: exp-revlogv2.unknown | ||
Gregory Szorc
|
r32697 | (see https://mercurial-scm.org/wiki/MissingRequirement for more information) | ||
[255] | ||||
$ cd .. | ||||
Can create and open repo with revlog v2 requirement | ||||
$ cat >> $HGRCPATH << EOF | ||||
> [experimental] | ||||
> revlogv2 = enable-unstable-format-and-corrupt-my-data | ||||
> EOF | ||||
$ hg init empty-repo | ||||
$ cd empty-repo | ||||
$ cat .hg/requires | ||||
dotencode | ||||
Raphaël Gomès
|
r47438 | exp-revlogv2.2 | ||
Gregory Szorc
|
r32697 | fncache | ||
Boris Feld
|
r40942 | sparserevlog | ||
Gregory Szorc
|
r32697 | store | ||
$ hg log | ||||
Unknown flags to revlog are rejected | ||||
>>> with open('.hg/store/00changelog.i', 'wb') as fh: | ||||
Joerg Sonnenberger
|
r45929 | ... fh.write(b'\xff\x00\xde\xad') and None | ||
Gregory Szorc
|
r32697 | |||
$ hg log | ||||
Martin von Zweigbergk
|
r46518 | abort: unknown flags (0xff00) in version 57005 revlog 00changelog.i | ||
Martin von Zweigbergk
|
r46732 | [50] | ||
Gregory Szorc
|
r32697 | |||
$ cd .. | ||||
Writing a simple revlog v2 works | ||||
$ hg init simple | ||||
$ cd simple | ||||
$ touch foo | ||||
$ hg -q commit -A -m initial | ||||
$ hg log | ||||
changeset: 0:96ee1d7354c4 | ||||
tag: tip | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: initial | ||||
Gregory Szorc
|
r41238 | Header written as expected | ||
Gregory Szorc
|
r32697 | |||
$ f --hexdump --bytes 4 .hg/store/00changelog.i | ||||
.hg/store/00changelog.i: | ||||
0000: 00 01 de ad |....| | ||||
$ f --hexdump --bytes 4 .hg/store/data/foo.i | ||||
.hg/store/data/foo.i: | ||||
Gregory Szorc
|
r41238 | 0000: 00 01 de ad |....| | ||