在哪里安装Mercurial Extensions,因此您不必在.hgrc中指定其路径



在哪里安装mercurial Extensions,因此您不必在.hgrc中指定其路径?

文档说您可以将它们置于Mercurial Path中,但这还不清楚。

我想安装一些扩展名,以便它们可用于该机器的任何用户表单,而无需修改每个用户.hgrc文件。

注意:如果这很重要,我对Ubuntu,Debian和Centos的解决方案感兴趣。

详细信息:我确实要部署的扩展之一是https://bitbucket.org/facebook/remotefilelog,它是由Facebook制作的,但他们在pypi上错过了它。

首先,如果您想在全球安装扩展,最好的选择可能是在全局hgrc文件中执行此操作,而不是让用户在本地进行此操作。如果启用/etc/mercurial/hgrc中的扩展名,则将为所有用户启用它。

您还可以在<install-root>/etc/mercurial/hgrc中启用它们,其中<install-root>是安装Mercurial可执行文件的目录的父目录。例如,如果通过/opt/local/bin/hg执行Mercurial,则<install-root>/opt/local。但是,这更脆弱,因为(通过设计)未遵循符号链接。例如,如果用户链接到其~/bin/hg,则将为他们咨询~/etc/mercurial/hgrc

如果您只想使用户可用的扩展名,但默认情况下不启用它们,那么它们必须进入Python Site-packages目录,与普通扩展名相同。假设这是您的全球python安装,那就是Mercurial使用的。但是,您可以使用virtualenv进行特定于Mercurial特定的Python安装,您可以在其中安装扩展名和其他东西,而无需污染主要的Python安装。扩展程序的普通setup.py脚本应适当处理任何一种情况(例如,Evolve扩展名的setup.py将将evolve.py放置在site-packages/hgext目录中)。

最新更新