在 Mercurial 中,有没有办法禁用所有配置(系统、用户、存储库)?
在任何重要的 hg 安装中,hgrc 往往包含重要的内容。
有没有办法完全忽略/绕过从系统、用户到存储库级别的所有配置?
用例是在一些自动化脚本中使用一些 hg 核心功能。目前,如果有任何配置错误(并且我经常弄乱我的 ~/.hgrc),脚本将因根本不使用的内容而中止。
如果我可以 hg
。
On any non-trivial hg installation, the hgrc's tend to contain significant stuff.
Is there a way to completely ignore/bypass ALL configurations, from system, user, to repo-level?
The use case is to use some hg core functionalities in some automation scripts. Currently, if anything is misconfigured (and I mess with my ~/.hgrc a lot), the scripts will abort for something it doesn't use at all.
It'd be perfect is I can just hg <whatever> --config:none
.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您可以通过将
HGRCPATH
环境变量设置为不带任何配置的内容来实现此目的。另外,如果您从脚本调用,也请考虑 HGPLAIN。
两者都可以在这里找到:https://www. Mercurial-scm.org/repo/hg/file/e3b87fb34d00/mercurial/help/environment.txt
其中说:
You can do it by setting your
HGRCPATH
environment variable to something with no configuration in it.Also if you're invoking from a script consider HGPLAIN too.
Both found here: https://www.mercurial-scm.org/repo/hg/file/e3b87fb34d00/mercurial/help/environment.txt
Which says:
似乎没有任何选项可以执行您想要的操作。但由于文档指出
以下脚本将读取标准输入并将 hg -showconfig 的输出转换为可写入
/.hg/hgrc
的覆盖配置。实际上它会覆盖 hg 找到的所有当前配置。该脚本可能需要进行调整,但到目前为止似乎有效。然后可以这样使用它:
There doesn't seem to have any option to perform want you want. But since the documentation states that
The following script will read the stdin and convert the output of hg -showconfig to an override config that could be written at
<repo>/.hg/hgrc
. Effectively it overrides all the current config found by hg. The script might have to be tweaked but it seems to work so far.It can then be used as such: