如何设置Mercurial用于提交的用户名?

当我像这样在Mercurial中提交一些东西时:

hg commit -m "username question" 

我看到这个输出:

 No username found, using 'WindowsVistaAdmin@ChunkyMonkey' instead 

ChunkyMonkey是我的Windows机器名称,显然WindowsVistaAdmin是我在这台机器上login的用户。

我怎样才能将用户名设置为更加可敬的,或者至less更简洁?

~/.hgrc (* nix)或者mercurial.ini (Windows)文件中:

 [ui] username = First Last <email@address.com> 

(如果你安装了TortoiseHg,你也可以运行hgtk userconfig并执行它那样。)

你可以直接在命令行指定你的用户名,如果你想使用–config。 例如

 hg --config ui.username=frymaster -m "comment here" commit 

实际上,你可以用这个命令覆盖.hgrc中的任何东西。 只要看看你的.hgrc并注意格式:

 [section] key=val 

直接翻译成

 hg --config section.key=val 

来自这里的信息:

设置用户名

当你第一次尝试运行hg commit时,不能保证成功。 Mercurial会logging您的姓名和地址,以便您进行每次更改,以便您和其他人稍后能够分辨是谁进行了每项更改。 Mercurial试图自动找出一个合理的用户名来提交更改。 它将尝试以下每个方法,按顺序:

  1. 如果您在命令行上使用hg commit命令指定了-u选项,然后再使用用户名,则始终给出最高优先级。
  2. 如果你已经设置了HGUSER环境variables,接下来会检查这个variables。
  3. 如果您在您的主目录中创build一个名为.hgrc的文件,并使用用户名input,那么将会在下一步使用该文件。 要查看该文件的内容应该如何,请参考下面的“创build一个Mercurialconfiguration文件”一节。
  4. 如果您已经设置了EMAIL环境variables,那么接下来会使用这个variables。
  5. Mercurial将查询您的系统以找出您的本地用户名和主机名,并从这些组件构build一个用户名。 由于这通常会导致用户名不是非常有用,所以如果必须这样做,将会显示警告。

如果所有这些机制失败,Mercurial将失败,打印一条错误消息。 在这种情况下,它不会让你提交,直到你设置一个用户名。

您应该考虑HGUSER环境variables和hg commit命令的-u选项,以覆盖Mercurial默认的用户名select方式。 对于正常的使用,为自己设置用户名的最简单也是最可靠的方法是创build一个.hgrc文件。 详情见下文。

这是我的Windows /users/xxx/mercurial.ini的外观。 我不必input任何用户名或密码。 看起来这可能是回购具体。 我已经tortoiseHG安装,不知道这是否有任何区别。

 [ui] username=mbroekhuis [auth] repo.prefix=http://myrepo repo.username=mbroekhuis repo.password=secret 

任何人试图使用HG工作台

设置

在这里输入图像说明

用户全局设置

在这里输入图像说明

编辑文件

在这里输入图像说明

保存