Mercurial > public > mercurial-scm > hg
diff mercurial/commands.py @ 45783:88a47cbf063c
config: add a .hg/hgrc-not-shared which won't be shared in share-safe mode
Previous patches add a safe mode for sharing repositories which involve sharing
of source requirements and config files.
In certain situations we might need to add a config to source repository which
we does not want to share. For this, we add a `.hg/hgrc-not-shared` which won't
be shared.
This also adds a `--non-shared` flag to `hg config` command to see the
non-shared config.
Differential Revision: https://phab.mercurial-scm.org/D8673
author | Pulkit Goyal <7895pulkit@gmail.com> |
---|---|
date | Wed, 01 Jul 2020 15:14:59 +0530 |
parents | 450e17e59603 |
children | 74271829ddc0 |
line wrap: on
line diff
--- a/mercurial/commands.py Fri Sep 18 18:52:38 2020 +0530 +++ b/mercurial/commands.py Wed Jul 01 15:14:59 2020 +0530 @@ -2139,6 +2139,7 @@ None, _(b'edit shared source repository config (EXPERIMENTAL)'), ), + (b'', b'non-shared', None, _(b'edit non shared config (EXPERIMENTAL)')), (b'g', b'global', None, _(b'edit global config')), ] + formatteropts, @@ -2169,6 +2170,9 @@ .. container:: verbose + --non-shared flag is used to edit `.hg/hgrc-not-shared` config file. + This file is not shared across shares when in share-safe mode. + Template: The following keywords are supported. See also :hg:`help templates`. @@ -2186,7 +2190,7 @@ """ opts = pycompat.byteskwargs(opts) - editopts = (b'edit', b'local', b'global', b'shared') + editopts = (b'edit', b'local', b'global', b'shared', b'non_shared') if any(opts.get(o) for o in editopts): cmdutil.check_at_most_one_arg(opts, *editopts[1:]) if opts.get(b'local'): @@ -2208,6 +2212,8 @@ ) ) paths = [vfsmod.vfs(repo.sharedpath).join(b'hgrc')] + elif opts.get(b'non_shared'): + paths = [repo.vfs.join(b'hgrc-not-shared')] else: paths = rcutil.userrcpath()