对mercurial存储库的所有用户执行hg设置

时间:2011-11-24 14:14:15

标签: configuration mercurial

有没有办法集中管理存储库的所有用户的mercurial设置?是否还有其他[现有]工具,附加组件,扩展程序等?

我的用例

我们有一个存储库,其中包含一些Excel,Word等文件,这些文件经常会导致合并问题。

使用[merge-patterns]条目la **.doc = internal:fail我可以指定预期的行为,但我必须为每个用户设置此项。

我希望这能自动传播给克隆存储库的任何人。

环境

我们在Windows客户端上使用托管在我们自己的Windows Server和TortoiseHg 2.2上的Kiln 2.6。

2 个答案:

答案 0 :(得分:4)

据我所知,Mercurial中不存在这种可能性,我不知道任何可以将.hgrc与其他文件一起克隆的扩展名。

但是,您可以做一些事情来“简化”每个用户的设置过程。

在存储库中提供模板hgrc

您可以在存储库中添加“模板”.hgrc。当用户克隆回购时,他唯一要做的就是将模板移动到正确的位置。

更改系统范围hgrc

如果您的客户端具有某种配置管理系统,则可以为每个用户设置系统范围的配置文件。有各种各样的方式。来自the documentation

  

(Windows)<install-dir>\Mercurial.ini
  (Windows)<install-dir>\hgrc.d\*.rc
  (Windows)HKEY_LOCAL_MACHINE\SOFTWARE\Mercurial

     
    

每个安装/系统配置文件,用于系统     Mercurial正在运行。这些文件中的选项适用于所有Mercurial     任何用户在任何目录中执行的命令。注册表项包含     类似PATH的字符串,其中每个部分都必须引用Mercurial.ini     file或是一个将读取*.rc个文件的目录。 Mercurial检查     这些位置中的每一个都按指定顺序排列,直到一个或多个     检测到配置文件。如果没有pywin32扩展名     安装后,Mercurial只会查找网站范围内的配置     C:\Mercurial\Mercurial.ini

  

但显然这取决于客户的设置方式,因此您必须自己找到解决方案。例如,您可以:

  1. 在计算机安装上设置这些文件
  2. 提供一个可执行文件,配置每个用户必须运行
  3. 配置内部配置管理系统,以便在下次启动计算机时设置此功能
  4. 更改漫游用户个人资料(如果有)。

答案 1 :(得分:1)

您可以使用projrc extension将项目配置文件推送给其他人。它要求客户端首先启用扩展,并且它们完全信任服务器。