我正在尝试创建一个共享的hgrc文件,该文件具有Mercurial的通用扩展名,因此我的同事们可以获得一致的经验并找到有用的工具。但是,启用Mercurial不附带的扩展程序会引起问题。

我的主仓库的hgrc指向源代码控制的共享.hgrc文件:

\repo.hg\hgrc

%include ..\tools\hg\dev.hgrc

共享的dev.hgrc然后启用我们保持源代码控制的扩展:

\Repo\tools\hg\dev.hgrc
[extensions]
hgshelve=tools\hg\hgshelve\hgshelve.py
fold=tools\hg\hgfold\fold.py

问题是仅当从根Repo目录运行hg时才找到这些扩展名。从子目录运行它会产生错误:
E:\Repo\src>hg
*** failed to import extension hgshelve from tools\hg\hgshelve\hgshelve.py: [Errno 2] No such file or directory
*** failed to import extension fold from tools\hg\hgfold\fold.py: [Errno 2] No such file or directory

我想引用存储库的根目录,而不依赖除相对路径结构以外的任何内容。

我已经查看了manual,但是在那里没有看到任何存储库相对路径选项。

最佳答案

它不是您想要的东西,但是如果您的系统是木偶,厨师或程序包控制的,则您可以轻松地添加一个程序包,该程序包将文件放到/etc/mercurial/hgrc.d/中,所有用户都将执行该文件在每次运行中。您可以将扩展名.py文件和hgrc代码段放在此处。

关于mercurial - Mercurial .hgrc文件中的存储库相对路径,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5706280/

10-13 09:03