Show More
@@ -1306,9 +1306,10 b' coreconfigitem(' | |||
|
1306 | 1306 | # Enable this dirstate format *when creating a new repository*. |
|
1307 | 1307 | # Which format to use for existing repos is controlled by .hg/requires |
|
1308 | 1308 | b'format', |
|
1309 |
b'e |
|
|
1309 | b'use-dirstate-v2', | |
|
1310 | 1310 | default=False, |
|
1311 | 1311 | experimental=True, |
|
1312 | alias=[(b'format', b'exp-rc-dirstate-v2')], | |
|
1312 | 1313 | ) |
|
1313 | 1314 | coreconfigitem( |
|
1314 | 1315 | b'format', |
@@ -1880,7 +1881,7 b' coreconfigitem(' | |||
|
1880 | 1881 | default=b'skip', |
|
1881 | 1882 | experimental=True, |
|
1882 | 1883 | ) |
|
1883 |
# experimental as long as format.e |
|
|
1884 | # experimental as long as format.use-dirstate-v2 is. | |
|
1884 | 1885 | coreconfigitem( |
|
1885 | 1886 | b'storage', |
|
1886 | 1887 | b'dirstate-v2.slow-path', |
@@ -892,7 +892,7 b' https://www.mercurial-scm.org/wiki/Missi' | |||
|
892 | 892 | |
|
893 | 893 | Enabled by default. |
|
894 | 894 | |
|
895 |
``e |
|
|
895 | ``use-dirstate-v2`` | |
|
896 | 896 | Enable or disable the experimental "dirstate-v2" feature. The dirstate |
|
897 | 897 | functionality is shared by all commands interacting with the working copy. |
|
898 | 898 | The new version is more robust, faster and stores more information. |
@@ -916,7 +916,7 b' https://www.mercurial-scm.org/wiki/Missi' | |||
|
916 | 916 | |
|
917 | 917 | $ hg debugupgraderepo \ |
|
918 | 918 | --run \ |
|
919 |
--config format.e |
|
|
919 | --config format.use-dirstate-v2=False \ | |
|
920 | 920 | --config storage.dirstate-v2.slow-path=allow |
|
921 | 921 | |
|
922 | 922 | For a more comprehensive guide, see :hg:`help internals.dirstate-v2`. |
@@ -37,12 +37,12 b' Enabling `dirstate-v2` for new local rep' | |||
|
37 | 37 | ------------------------------------------------ |
|
38 | 38 | |
|
39 | 39 | When creating a new local repository such as with `hg init` or `hg clone`, |
|
40 |
the `e |
|
|
40 | the `use-dirstate-v2` boolean in the `format` configuration section | |
|
41 | 41 | controls whether to use this file format. |
|
42 | 42 | This is disabled by default as of this writing. |
|
43 | 43 | To enable it for a single repository, run for example:: |
|
44 | 44 | |
|
45 |
$ hg init my-project --config format.e |
|
|
45 | $ hg init my-project --config format.use-dirstate-v2=1 | |
|
46 | 46 | |
|
47 | 47 | Checking the format of an existing local repository |
|
48 | 48 | -------------------------------------------------- |
@@ -63,15 +63,15 b' Upgrading or downgrading an existing loc' | |||
|
63 | 63 | The `debugupgrade` command does various upgrades or downgrades |
|
64 | 64 | on a local repository |
|
65 | 65 | based on the current Mercurial version and on configuration. |
|
66 |
The same `format.e |
|
|
66 | The same `format.use-dirstate-v2` configuration is used again. | |
|
67 | 67 | |
|
68 | 68 | Example to upgrade:: |
|
69 | 69 | |
|
70 |
$ hg debugupgrade --config format.e |
|
|
70 | $ hg debugupgrade --config format.use-dirstate-v2=1 | |
|
71 | 71 | |
|
72 | 72 | Example to downgrade to `dirstate-v1`:: |
|
73 | 73 | |
|
74 |
$ hg debugupgrade --config format.e |
|
|
74 | $ hg debugupgrade --config format.use-dirstate-v2=0 | |
|
75 | 75 | |
|
76 | 76 | Both of this commands do nothing but print a list of proposed changes, |
|
77 | 77 | which may include changes unrelated to the dirstate. |
@@ -19,7 +19,7 b' The following operations are sped up whe' | |||
|
19 | 19 | - discovery of differences between repositories (pull/push) |
|
20 | 20 | - nodemap (see :hg:`help config.format.use-persistent-nodemap`) |
|
21 | 21 | - all commands using the dirstate (status, commit, diff, add, update, etc.) |
|
22 |
- dirstate-v2 (see :hg:`help config.format.e |
|
|
22 | - dirstate-v2 (see :hg:`help config.format.use-dirstate-v2`) | |
|
23 | 23 | - iteration over ancestors in a graph |
|
24 | 24 | |
|
25 | 25 | More features are in the works, and improvements on the above listed are still |
@@ -1189,7 +1189,7 b' def resolverevlogstorevfsoptions(ui, req' | |||
|
1189 | 1189 | b"fast implementation." |
|
1190 | 1190 | ) |
|
1191 | 1191 | hint = _( |
|
1192 |
b"check `hg help config.format.e |
|
|
1192 | b"check `hg help config.format.use-dirstate-v2` " b"for details" | |
|
1193 | 1193 | ) |
|
1194 | 1194 | if not dirstate.HAS_FAST_DIRSTATE_V2: |
|
1195 | 1195 | if slow_path == b'warn': |
@@ -3630,9 +3630,9 b' def newreporequirements(ui, createopts):' | |||
|
3630 | 3630 | if ui.configbool(b'format', b'sparse-revlog'): |
|
3631 | 3631 | requirements.add(requirementsmod.SPARSEREVLOG_REQUIREMENT) |
|
3632 | 3632 | |
|
3633 |
# experimental config: format.e |
|
|
3633 | # experimental config: format.use-dirstate-v2 | |
|
3634 | 3634 | # Keep this logic in sync with `has_dirstate_v2()` in `tests/hghave.py` |
|
3635 |
if ui.configbool(b'format', b'e |
|
|
3635 | if ui.configbool(b'format', b'use-dirstate-v2'): | |
|
3636 | 3636 | requirements.add(requirementsmod.DIRSTATE_V2_REQUIREMENT) |
|
3637 | 3637 | |
|
3638 | 3638 | # experimental config: format.exp-use-copies-side-data-changeset |
@@ -6,7 +6,7 b' Create a repository:' | |||
|
6 | 6 | devel.all-warnings=true |
|
7 | 7 | devel.default-date=0 0 |
|
8 | 8 | extensions.fsmonitor= (fsmonitor !) |
|
9 |
format.e |
|
|
9 | format.use-dirstate-v2=1 (dirstate-v2 !) | |
|
10 | 10 | largefiles.usercache=$TESTTMP/.cache/largefiles |
|
11 | 11 | lfs.usercache=$TESTTMP/.cache/lfs |
|
12 | 12 | ui.slash=True |
@@ -218,7 +218,7 b' check that local configs for the cached ' | |||
|
218 | 218 | devel.all-warnings=true |
|
219 | 219 | devel.default-date=0 0 |
|
220 | 220 | extensions.fsmonitor= (fsmonitor !) |
|
221 |
format.e |
|
|
221 | format.use-dirstate-v2=1 (dirstate-v2 !) | |
|
222 | 222 | largefiles.usercache=$TESTTMP/.cache/largefiles |
|
223 | 223 | lfs.usercache=$TESTTMP/.cache/lfs |
|
224 | 224 | ui.slash=True |
@@ -3,7 +3,7 b'' | |||
|
3 | 3 | #if dirstate-v2 |
|
4 | 4 | $ cat >> $HGRCPATH << EOF |
|
5 | 5 | > [format] |
|
6 |
> e |
|
|
6 | > use-dirstate-v2=1 | |
|
7 | 7 | > [storage] |
|
8 | 8 | > dirstate-v2.slow-path=allow |
|
9 | 9 | > EOF |
@@ -3,7 +3,7 b'' | |||
|
3 | 3 | #if dirstate-v2 |
|
4 | 4 | $ cat >> $HGRCPATH << EOF |
|
5 | 5 | > [format] |
|
6 |
> e |
|
|
6 | > use-dirstate-v2=1 | |
|
7 | 7 | > [storage] |
|
8 | 8 | > dirstate-v2.slow-path=allow |
|
9 | 9 | > EOF |
@@ -3,7 +3,7 b'' | |||
|
3 | 3 | #if dirstate-v2 |
|
4 | 4 | $ cat >> $HGRCPATH << EOF |
|
5 | 5 | > [format] |
|
6 |
> e |
|
|
6 | > use-dirstate-v2=1 | |
|
7 | 7 | > [storage] |
|
8 | 8 | > dirstate-v2.slow-path=allow |
|
9 | 9 | > EOF |
@@ -1585,7 +1585,7 b' Separate sections from subsections' | |||
|
1585 | 1585 | |
|
1586 | 1586 | "usefncache" |
|
1587 | 1587 | |
|
1588 |
"e |
|
|
1588 | "use-dirstate-v2" | |
|
1589 | 1589 | |
|
1590 | 1590 | "use-persistent-nodemap" |
|
1591 | 1591 |
@@ -3,7 +3,7 b'' | |||
|
3 | 3 | #if dirstate-v2 |
|
4 | 4 | $ cat >> $HGRCPATH << EOF |
|
5 | 5 | > [format] |
|
6 |
> e |
|
|
6 | > use-dirstate-v2=1 | |
|
7 | 7 | > [storage] |
|
8 | 8 | > dirstate-v2.slow-path=allow |
|
9 | 9 | > EOF |
@@ -5,7 +5,7 b'' | |||
|
5 | 5 | #if dirstate-v2 |
|
6 | 6 | $ cat >> $HGRCPATH << EOF |
|
7 | 7 | > [format] |
|
8 |
> e |
|
|
8 | > use-dirstate-v2=1 | |
|
9 | 9 | > [storage] |
|
10 | 10 | > dirstate-v2.slow-path=allow |
|
11 | 11 | > EOF |
@@ -800,7 +800,7 b' downgrading' | |||
|
800 | 800 | requirements |
|
801 | 801 | preserved: dotencode, fncache, generaldelta, revlogv1, share-safe, sparserevlog, store (no-zstd no-dirstate-v2 !) |
|
802 | 802 | preserved: dotencode, fncache, generaldelta, revlog-compression-zstd, revlogv1, share-safe, sparserevlog, store (zstd no-dirstate-v2 !) |
|
803 |
preserved: dotencode, e |
|
|
803 | preserved: dotencode, use-dirstate-v2, fncache, generaldelta, revlog-compression-zstd, revlogv1, share-safe, sparserevlog, store (zstd dirstate-v2 !) | |
|
804 | 804 | removed: persistent-nodemap |
|
805 | 805 | |
|
806 | 806 | processed revlogs: |
@@ -844,7 +844,7 b' upgrading' | |||
|
844 | 844 | requirements |
|
845 | 845 | preserved: dotencode, fncache, generaldelta, revlogv1, share-safe, sparserevlog, store (no-zstd no-dirstate-v2 !) |
|
846 | 846 | preserved: dotencode, fncache, generaldelta, revlog-compression-zstd, revlogv1, share-safe, sparserevlog, store (zstd no-dirstate-v2 !) |
|
847 |
preserved: dotencode, e |
|
|
847 | preserved: dotencode, use-dirstate-v2, fncache, generaldelta, revlog-compression-zstd, revlogv1, share-safe, sparserevlog, store (zstd dirstate-v2 !) | |
|
848 | 848 | added: persistent-nodemap |
|
849 | 849 | |
|
850 | 850 | processed revlogs: |
@@ -876,7 +876,7 b' Running unrelated upgrade' | |||
|
876 | 876 | requirements |
|
877 | 877 | preserved: dotencode, fncache, generaldelta, persistent-nodemap, revlogv1, share-safe, sparserevlog, store (no-zstd no-dirstate-v2 !) |
|
878 | 878 | preserved: dotencode, fncache, generaldelta, persistent-nodemap, revlog-compression-zstd, revlogv1, share-safe, sparserevlog, store (zstd no-dirstate-v2 !) |
|
879 |
preserved: dotencode, e |
|
|
879 | preserved: dotencode, use-dirstate-v2, fncache, generaldelta, persistent-nodemap, revlog-compression-zstd, revlogv1, share-safe, sparserevlog, store (zstd dirstate-v2 !) | |
|
880 | 880 | |
|
881 | 881 | optimisations: re-delta-all |
|
882 | 882 |
@@ -3,7 +3,7 b'' | |||
|
3 | 3 | #if dirstate-v2 |
|
4 | 4 | $ cat >> $HGRCPATH << EOF |
|
5 | 5 | > [format] |
|
6 |
> e |
|
|
6 | > use-dirstate-v2=1 | |
|
7 | 7 | > [storage] |
|
8 | 8 | > dirstate-v2.slow-path=allow |
|
9 | 9 | > EOF |
@@ -225,7 +225,7 b' Disable zstd related tests because its n' | |||
|
225 | 225 | |
|
226 | 226 | requirements |
|
227 | 227 | preserved: dotencode, fncache, generaldelta, revlogv1, share-safe, sparserevlog, store (no-dirstate-v2 !) |
|
228 |
preserved: dotencode, e |
|
|
228 | preserved: dotencode, use-dirstate-v2, fncache, generaldelta, revlogv1, share-safe, sparserevlog, store (dirstate-v2 !) | |
|
229 | 229 | added: revlog-compression-zstd |
|
230 | 230 | |
|
231 | 231 | processed revlogs: |
@@ -253,8 +253,8 b' Disable zstd related tests because its n' | |||
|
253 | 253 | requirements |
|
254 | 254 | preserved: dotencode, fncache, generaldelta, revlogv1, share-safe, sparserevlog, store (no-zstd no-dirstate-v2 !) |
|
255 | 255 | preserved: dotencode, fncache, generaldelta, revlog-compression-zstd, revlogv1, share-safe, sparserevlog, store (zstd no-dirstate-v2 !) |
|
256 |
preserved: dotencode, e |
|
|
257 |
preserved: dotencode, e |
|
|
256 | preserved: dotencode, use-dirstate-v2, fncache, generaldelta, revlogv1, share-safe, sparserevlog, store (no-zstd dirstate-v2 !) | |
|
257 | preserved: dotencode, use-dirstate-v2, fncache, generaldelta, revlog-compression-zstd, revlogv1, share-safe, sparserevlog, store (zstd dirstate-v2 !) | |
|
258 | 258 | added: persistent-nodemap |
|
259 | 259 | |
|
260 | 260 | processed revlogs: |
@@ -360,7 +360,7 b' Upgrade' | |||
|
360 | 360 | $ hg debugupgraderepo -q |
|
361 | 361 | requirements |
|
362 | 362 | preserved: dotencode, fncache, generaldelta, revlogv1, sparserevlog, store (no-dirstate-v2 !) |
|
363 |
preserved: dotencode, e |
|
|
363 | preserved: dotencode, use-dirstate-v2, fncache, generaldelta, revlogv1, sparserevlog, store (dirstate-v2 !) | |
|
364 | 364 | added: share-safe |
|
365 | 365 | |
|
366 | 366 | processed revlogs: |
@@ -373,7 +373,7 b' Upgrade' | |||
|
373 | 373 | |
|
374 | 374 | requirements |
|
375 | 375 | preserved: dotencode, fncache, generaldelta, revlogv1, sparserevlog, store (no-dirstate-v2 !) |
|
376 |
preserved: dotencode, e |
|
|
376 | preserved: dotencode, use-dirstate-v2, fncache, generaldelta, revlogv1, sparserevlog, store (dirstate-v2 !) | |
|
377 | 377 | added: share-safe |
|
378 | 378 | |
|
379 | 379 | share-safe |
@@ -454,7 +454,7 b' Test that downgrading works too' | |||
|
454 | 454 | $ hg debugupgraderepo -q |
|
455 | 455 | requirements |
|
456 | 456 | preserved: dotencode, fncache, generaldelta, revlogv1, sparserevlog, store (no-dirstate-v2 !) |
|
457 |
preserved: dotencode, e |
|
|
457 | preserved: dotencode, use-dirstate-v2, fncache, generaldelta, revlogv1, sparserevlog, store (dirstate-v2 !) | |
|
458 | 458 | removed: share-safe |
|
459 | 459 | |
|
460 | 460 | processed revlogs: |
@@ -467,7 +467,7 b' Test that downgrading works too' | |||
|
467 | 467 | |
|
468 | 468 | requirements |
|
469 | 469 | preserved: dotencode, fncache, generaldelta, revlogv1, sparserevlog, store (no-dirstate-v2 !) |
|
470 |
preserved: dotencode, e |
|
|
470 | preserved: dotencode, use-dirstate-v2, fncache, generaldelta, revlogv1, sparserevlog, store (dirstate-v2 !) | |
|
471 | 471 | removed: share-safe |
|
472 | 472 | |
|
473 | 473 | processed revlogs: |
@@ -553,7 +553,7 b' Testing automatic upgrade of shares when' | |||
|
553 | 553 | |
|
554 | 554 | requirements |
|
555 | 555 | preserved: dotencode, fncache, generaldelta, revlogv1, sparserevlog, store (no-dirstate-v2 !) |
|
556 |
preserved: dotencode, e |
|
|
556 | preserved: dotencode, use-dirstate-v2, fncache, generaldelta, revlogv1, sparserevlog, store (dirstate-v2 !) | |
|
557 | 557 | added: share-safe |
|
558 | 558 | |
|
559 | 559 | processed revlogs: |
@@ -3,7 +3,7 b'' | |||
|
3 | 3 | #if dirstate-v2 |
|
4 | 4 | $ cat >> $HGRCPATH << EOF |
|
5 | 5 | > [format] |
|
6 |
> e |
|
|
6 | > use-dirstate-v2=1 | |
|
7 | 7 | > [storage] |
|
8 | 8 | > dirstate-v2.slow-path=allow |
|
9 | 9 | > EOF |
@@ -48,12 +48,12 b' The extension requires a repo (currently' | |||
|
48 | 48 | stream2 -- {bytecount: 1693, filecount: 11, requirements: dotencode%2Cfncache%2Cgeneraldelta%2Crevlogv1%2Csparserevlog%2Cstore} (mandatory: True) (no-zstd !) |
|
49 | 49 | stream2 -- {bytecount: 1693, filecount: 11, requirements: dotencode%2Cfncache%2Cgeneraldelta%2Crevlog-compression-zstd%2Crevlogv1%2Csparserevlog%2Cstore} (mandatory: True) (zstd no-rust !) |
|
50 | 50 | stream2 -- {bytecount: 1693, filecount: 11, requirements: dotencode%2Cfncache%2Cgeneraldelta%2Cpersistent-nodemap%2Crevlog-compression-zstd%2Crevlogv1%2Csparserevlog%2Cstore} (mandatory: True) (rust no-dirstate-v2 !) |
|
51 |
stream2 -- {bytecount: 1693, filecount: 11, requirements: dotencode%2Ce |
|
|
51 | stream2 -- {bytecount: 1693, filecount: 11, requirements: dotencode%2Cuse-dirstate-v2%2Cfncache%2Cgeneraldelta%2Cpersistent-nodemap%2Crevlog-compression-zstd%2Crevlogv1%2Csparserevlog%2Cstore} (mandatory: True) (dirstate-v2 !) | |
|
52 | 52 | $ hg debugbundle --spec bundle.hg |
|
53 | 53 | none-v2;stream=v2;requirements%3Ddotencode%2Cfncache%2Cgeneraldelta%2Crevlogv1%2Csparserevlog%2Cstore (no-zstd !) |
|
54 | 54 | none-v2;stream=v2;requirements%3Ddotencode%2Cfncache%2Cgeneraldelta%2Crevlog-compression-zstd%2Crevlogv1%2Csparserevlog%2Cstore (zstd no-rust !) |
|
55 | 55 | none-v2;stream=v2;requirements%3Ddotencode%2Cfncache%2Cgeneraldelta%2Cpersistent-nodemap%2Crevlog-compression-zstd%2Crevlogv1%2Csparserevlog%2Cstore (rust no-dirstate-v2 !) |
|
56 |
none-v2;stream=v2;requirements%3Ddotencode%2Ce |
|
|
56 | none-v2;stream=v2;requirements%3Ddotencode%2Cuse-dirstate-v2%2Cfncache%2Cgeneraldelta%2Cpersistent-nodemap%2Crevlog-compression-zstd%2Crevlogv1%2Csparserevlog%2Cstore (dirstate-v2 !) | |
|
57 | 57 | |
|
58 | 58 | Test that we can apply the bundle as a stream clone bundle |
|
59 | 59 |
@@ -5,7 +5,7 b'' | |||
|
5 | 5 | #if dirstate-v2 |
|
6 | 6 | $ cat >> $HGRCPATH << EOF |
|
7 | 7 | > [format] |
|
8 |
> e |
|
|
8 | > use-dirstate-v2=1 | |
|
9 | 9 | > [storage] |
|
10 | 10 | > dirstate-v2.slow-path=allow |
|
11 | 11 | > EOF |
@@ -1645,9 +1645,9 b' Demonstrate that nothing to perform upgr' | |||
|
1645 | 1645 | |
|
1646 | 1646 | Upgrade to dirstate-v2 |
|
1647 | 1647 | |
|
1648 |
$ hg debugformat -v --config format.e |
|
|
1648 | $ hg debugformat -v --config format.use-dirstate-v2=1 | grep dirstate-v2 | |
|
1649 | 1649 | dirstate-v2: no yes no |
|
1650 |
$ hg debugupgraderepo --config format.e |
|
|
1650 | $ hg debugupgraderepo --config format.use-dirstate-v2=1 --run | |
|
1651 | 1651 | upgrade will perform the following actions: |
|
1652 | 1652 | |
|
1653 | 1653 | requirements |
@@ -1707,14 +1707,14 b' Downgrade from dirstate-v2' | |||
|
1707 | 1707 | dirstate-v2: upgrade and downgrade from and empty repository: |
|
1708 | 1708 | ------------------------------------------------------------- |
|
1709 | 1709 | |
|
1710 |
$ hg init --config format.e |
|
|
1710 | $ hg init --config format.use-dirstate-v2=no dirstate-v2-empty | |
|
1711 | 1711 | $ cd dirstate-v2-empty |
|
1712 | 1712 | $ hg debugformat | grep dirstate-v2 |
|
1713 | 1713 | dirstate-v2: no |
|
1714 | 1714 | |
|
1715 | 1715 | upgrade |
|
1716 | 1716 | |
|
1717 |
$ hg debugupgraderepo --run --config format.e |
|
|
1717 | $ hg debugupgraderepo --run --config format.use-dirstate-v2=yes | |
|
1718 | 1718 | upgrade will perform the following actions: |
|
1719 | 1719 | |
|
1720 | 1720 | requirements |
@@ -1741,7 +1741,7 b' upgrade' | |||
|
1741 | 1741 | |
|
1742 | 1742 | downgrade |
|
1743 | 1743 | |
|
1744 |
$ hg debugupgraderepo --run --config format.e |
|
|
1744 | $ hg debugupgraderepo --run --config format.use-dirstate-v2=no | |
|
1745 | 1745 | upgrade will perform the following actions: |
|
1746 | 1746 | |
|
1747 | 1747 | requirements |
General Comments 0
You need to be logged in to leave comments.
Login now