Mercurial > hg
view mercurial/help/config.txt @ 12296:d7fff529d85d
clone: only use stream when we understand the revlog format
This patch fixes issues with stream cloning in the presense of parentdelta,
lwcopy and similar additions that change the interpretation of the revlog
format, or the format itself.
Currently, the stream capability is sent like this:
stream=<version of changelog>
But the client doesn't actually check the version number; also, it only checks
the changelog and it doesn't capture the interpretation-changes and
flag-changes in parentdelta and lwcopy.
This patch removes the 'stream' capability whenever we use a non-basic revlog
format, to prevent old clients from receiving incorrect data. In those cases,
a new capability called 'streamreqs' is added instead. Instead of a revlog
version, it comes with a list of revlog-format relevant requirements, which
are a subset of the repository requirements, excluding things that are not
relevant for stream.
New clients use this to determine whether or not they can stream. Old clients
only look for the 'stream' capability, as always. New servers will still send
this when serving old repositories.
author | Sune Foldager <cryo@cyanite.org> |
---|---|
date | Wed, 15 Sep 2010 11:06:22 +0200 |
parents | 534c69494918 |
children | 86b5cc1e8be8 |
line wrap: on
line source
Mercurial reads configuration data from several files, if they exist. Below we list the most specific file first. On Windows, these configuration files are read: - ``<repo>\.hg\hgrc`` - ``%USERPROFILE%\.hgrc`` - ``%USERPROFILE%\mercurial.ini`` - ``%HOME%\.hgrc`` - ``%HOME%\mercurial.ini`` - ``C:\mercurial\mercurial.ini`` (unless regkey or hgrc.d\ or mercurial.ini found) - ``HKEY_LOCAL_MACHINE\SOFTWARE\Mercurial`` (unless hgrc.d\ or mercurial.ini found) - ``<hg.exe-dir>\hgrc.d\*.rc`` (unless mercurial.ini found) - ``<hg.exe-dir>\mercurial.ini`` On Unix, these files are read: - ``<repo>/.hg/hgrc`` - ``$HOME/.hgrc`` - ``/etc/mercurial/hgrc`` - ``/etc/mercurial/hgrc.d/*.rc`` - ``<install-root>/etc/mercurial/hgrc`` - ``<install-root>/etc/mercurial/hgrc.d/*.rc`` If there is a per-repository configuration file which is not owned by the active user, Mercurial will warn you that the file is skipped:: not trusting file <repo>/.hg/hgrc from untrusted user USER, group GROUP If this bothers you, the warning can be silenced (the file would still be ignored) or trust can be established. Use one of the following settings, the syntax is explained below: - ``ui.report_untrusted = False`` - ``trusted.users = USER`` - ``trusted.groups = GROUP`` The configuration files for Mercurial use a simple ini-file format. A configuration file consists of sections, led by a ``[section]`` header and followed by ``name = value`` entries:: [ui] username = Firstname Lastname <firstname.lastname@example.net> verbose = True The above entries will be referred to as ``ui.username`` and ``ui.verbose``, respectively. Please see the hgrc man page for a full description of the possible configuration values: - on Unix-like systems: ``man hgrc`` - online: http://www.selenic.com/mercurial/hgrc.5.html