2019-12-10 02:24:31 +03:00
|
|
|
#chg-compatible
|
|
|
|
|
2020-01-20 13:42:49 +03:00
|
|
|
$ disable treemanifest
|
2019-05-28 13:12:27 +03:00
|
|
|
|
2010-08-03 08:29:14 +04:00
|
|
|
Create a repository:
|
|
|
|
|
2020-08-04 19:58:00 +03:00
|
|
|
$ setconfig format.use-segmented-changelog=1
|
|
|
|
|
2014-02-28 09:17:37 +04:00
|
|
|
$ hg config
|
2015-05-27 00:14:36 +03:00
|
|
|
devel.all-warnings=true
|
2017-05-22 17:59:57 +03:00
|
|
|
devel.default-date=0 0
|
2019-11-14 01:41:18 +03:00
|
|
|
experimental.metalog=true
|
2020-08-28 05:13:31 +03:00
|
|
|
extensions.patchrmdir=
|
2017-07-12 21:17:58 +03:00
|
|
|
extensions.fsmonitor= (fsmonitor !)
|
2019-05-28 13:12:27 +03:00
|
|
|
extensions.treemanifest=!
|
2020-07-31 06:24:12 +03:00
|
|
|
format.use-zstore-commit-data=false
|
2020-08-04 19:58:00 +03:00
|
|
|
format.use-segmented-changelog=1
|
2018-06-26 05:34:37 +03:00
|
|
|
fsmonitor.detectrace=1 (fsmonitor !)
|
2020-06-11 03:33:43 +03:00
|
|
|
mutation.record=False
|
2019-05-10 19:56:31 +03:00
|
|
|
remotefilelog.reponame=reponame-default
|
|
|
|
remotefilelog.cachepath=$TESTTMP/default-hgcache
|
2019-05-10 19:56:31 +03:00
|
|
|
treemanifest.flatcompat=True
|
2020-06-10 19:26:55 +03:00
|
|
|
treemanifest.sendtrees=False
|
|
|
|
treemanifest.treeonly=False
|
2019-10-04 20:47:53 +03:00
|
|
|
treemanifest.rustmanifest=True
|
2014-02-28 09:17:37 +04:00
|
|
|
ui.slash=True
|
|
|
|
ui.interactive=False
|
filemerge: use 'basic' as the default of '[ui] mergemarkers' for safety
Before this patch, 'detailed' is used as the default of '[ui]
mergemarkers'. This embeds non-ASCII characters in tags, branches,
bookmarks, author and/or commit descriptions into merged files in the
encoding specified by '--encoding' global option, 'HGENCODING' or
other locale setting environment variables.
But, if files to be merged use another encoding, this behavior breaks
consistency of encoding in merged files.
For example, ISO-2022-JP or EUC-JP are sometimes used as the file
encoding for Japanese characters, because of historical and/or
environmental reasons, even though UTF-8 or Shift-JIS are ordinarily
used as the terminal encoding.
This can't be resolved automatically, because Mercurial doesn't aware
encoding of managed files.
This patch uses 'basic' as the default of '[ui] mergemarkers' to avoid
embedding encoding sensitive characters for safety.
This patch puts '[ui] mergemarkers = detailed' into default hgrc file
for tests, to reduce changes for tests in this patch.
2014-07-05 21:56:41 +04:00
|
|
|
ui.mergemarkers=detailed
|
2014-10-21 18:16:46 +04:00
|
|
|
ui.promptecho=True
|
2017-02-16 11:13:29 +03:00
|
|
|
web.address=localhost
|
2017-02-16 19:43:59 +03:00
|
|
|
web\.ipv6=(?:True|False) (re)
|
2020-03-17 20:36:01 +03:00
|
|
|
workingcopy.enablerustwalker=True
|
2011-04-19 14:04:44 +04:00
|
|
|
$ hg init t
|
2010-08-03 08:29:14 +04:00
|
|
|
$ cd t
|
|
|
|
|
2017-04-12 00:54:12 +03:00
|
|
|
Prepare a changeset:
|
2010-08-03 08:29:14 +04:00
|
|
|
|
|
|
|
$ echo a > a
|
|
|
|
$ hg add a
|
2017-04-12 00:54:12 +03:00
|
|
|
|
|
|
|
$ hg status
|
|
|
|
A a
|
|
|
|
|
|
|
|
Writes to stdio succeed and fail appropriately
|
|
|
|
|
|
|
|
#if devfull
|
|
|
|
$ hg status 2>/dev/full
|
|
|
|
A a
|
|
|
|
|
|
|
|
$ hg status >/dev/full
|
|
|
|
abort: No space left on device
|
2020-04-09 19:21:15 +03:00
|
|
|
Exception ignored in: <_io.TextIOWrapper name='<stdout>' mode='w' encoding='*'> (glob) (no-py2 !)
|
|
|
|
OSError: [Errno 28] No space left on device (no-py2 !)
|
2017-04-12 00:54:12 +03:00
|
|
|
[255]
|
2017-10-03 22:09:23 +03:00
|
|
|
#endif
|
2017-04-12 00:54:12 +03:00
|
|
|
|
2017-10-03 22:09:23 +03:00
|
|
|
#if devfull no-chg
|
2017-04-12 00:54:12 +03:00
|
|
|
$ hg status >/dev/full 2>&1
|
|
|
|
[1]
|
|
|
|
|
|
|
|
$ hg status ENOENT 2>/dev/full
|
|
|
|
[1]
|
2017-10-03 22:09:23 +03:00
|
|
|
#endif
|
|
|
|
|
|
|
|
#if devfull chg
|
|
|
|
$ hg status >/dev/full 2>&1
|
|
|
|
[255]
|
|
|
|
|
|
|
|
$ hg status ENOENT 2>/dev/full
|
|
|
|
[255]
|
2017-04-12 00:54:12 +03:00
|
|
|
#endif
|
|
|
|
|
2010-09-03 01:22:51 +04:00
|
|
|
$ hg commit -m test
|
2010-08-03 08:29:14 +04:00
|
|
|
|
|
|
|
This command is ancient:
|
|
|
|
|
|
|
|
$ hg history
|
2020-07-21 03:23:52 +03:00
|
|
|
commit: acb14030fe0a
|
2020-08-04 19:58:00 +03:00
|
|
|
parent: 000000000000
|
2010-08-03 08:29:14 +04:00
|
|
|
user: test
|
2010-09-03 01:22:51 +04:00
|
|
|
date: Thu Jan 01 00:00:00 1970 +0000
|
2010-08-03 08:29:14 +04:00
|
|
|
summary: test
|
|
|
|
|
|
|
|
|
2020-08-04 19:58:00 +03:00
|
|
|
Verify that updating to revision acb14030fe0a via commands.update() works properly
|
2011-03-08 16:41:39 +03:00
|
|
|
|
|
|
|
$ cat <<EOF > update_to_rev0.py
|
2019-01-30 03:25:33 +03:00
|
|
|
> from edenscm.mercurial import ui, hg, commands
|
2016-10-22 08:35:10 +03:00
|
|
|
> myui = ui.ui.load()
|
2011-03-08 16:41:39 +03:00
|
|
|
> repo = hg.repository(myui, path='.')
|
2020-08-04 19:58:00 +03:00
|
|
|
> commands.update(myui, repo, rev='acb14030fe0a')
|
2011-03-08 16:41:39 +03:00
|
|
|
> EOF
|
|
|
|
$ hg up null
|
|
|
|
0 files updated, 0 files merged, 1 files removed, 0 files unresolved
|
2019-09-21 03:43:59 +03:00
|
|
|
$ hg debugpython -- ./update_to_rev0.py
|
2011-03-08 16:41:39 +03:00
|
|
|
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
|
|
|
|
$ hg identify -n
|
2020-08-04 19:58:00 +03:00
|
|
|
72057594037927936
|
2012-08-08 20:10:30 +04:00
|
|
|
|
2011-03-08 16:41:39 +03:00
|
|
|
|
2010-08-03 08:29:14 +04:00
|
|
|
Poke around at hashes:
|
|
|
|
|
|
|
|
$ hg manifest --debug
|
|
|
|
b789fdd96dc2f3bd229c1dd8eedf0fc60e2b68e3 644 a
|
|
|
|
|
|
|
|
$ hg cat a
|
|
|
|
a
|
|
|
|
|
|
|
|
Verify should succeed:
|
|
|
|
|
|
|
|
$ hg verify
|
2020-08-04 19:58:00 +03:00
|
|
|
verify for this repo format is not yet supported
|
2010-08-03 08:29:14 +04:00
|
|
|
|
|
|
|
At the end...
|
2012-06-11 03:40:51 +04:00
|
|
|
|
|
|
|
$ cd ..
|