第一次使用Mercurial在WindowsXP上出现问题(可能在所有Win安装中都会发生)。我在一个不明显的地方找到了答案,所以我自己问/回答这个问题,因此其他人不必像我一样进行搜索。
第一次在机器上使用Mercurial。
添加新的Repoz:
c:\bla\>hg add
没问题。
接下来,提交:
c:\bla\hg commit
错误:
中止:未提供用户名(请参阅“汞帮助配置”)
第一次使用Mercurial在WindowsXP上出现问题(可能在所有Win安装中都会发生)。我在一个不明显的地方找到了答案,所以我自己问/回答这个问题,因此其他人不必像我一样进行搜索。
第一次在机器上使用Mercurial。
添加新的Repoz:
c:\bla\>hg add
没问题。
接下来,提交:
c:\bla\hg commit
错误:
中止:未提供用户名(请参阅“汞帮助配置”)
Answers:
解:
在我的Windows安装中,Mercurial.ini
不会传播。它还需要添加用户电子邮件。
采取Mercurial.ini
在Mercurial可执行文件安装目录(C:\Program Files\Mercurial\Mercurial.ini
在我的机器上)中找到的默认文件,并将其复制到用户主目录(C:\Documents and Settings\myName
在winXP上)。
在Windows 7安装中,没有默认的.ini,您将需要在中创建一个新的.ini C:\Users\myName
。
然后编辑该.ini文件。找到这个区域。用户名需要设置电子邮件。将为空白-在此处添加您的电子邮件名称。
[ui]
; editor used to enter commit logs, etc. Most text editors will work.
editor = notepad
username = userEmail@domain.com
这为我解决了问题。
hgrc
在.hg
存储库的文件夹中添加一个名为的文件,使我可以提交更改。
抱歉,您为什么称这为问题?Mercurial要求您查看hg help config
,此帮助文本明确告诉您如何添加用户名-自从我写了该帮助文本以来,我就知道了:-)
我们应该如何改善错误消息以使其更加清晰?
编辑:自从我在2010年撰写此书以来,我们设法通过hg help config
为所有配置设置提供帮助来解决这个问题。因此,如何设置用户名的好例子:
[ui]
username = Your Name <your@email.com>
现在已消失在噪音中(将此添加到中~/.hgrc
,如有必要,创建文件)。我为此打开了一个问题。
hg help config
确实包含Windows的说明,即它列出了Mercurial.ini
文件的可能位置。其中一个位置是C:\Program Files\Mercurial\Mercurial.ini
(列为<install-dir>\Mercurial.ini
),所以我不确定为什么该文件中的设置没有生效。
hg help config
文字没有说明解决问题所需采取的措施,并且“ Windows上”部分中的路径指向的位置也不清楚。哪里%USERPROFILE%
或%HOME%
点?我猜这mercurial.ini
对我的系统上不存在以下安装没有帮助。
hg help config
我只会打印一小段文字,并且我已确保设置用户名是该文字的主要示例。从那时起,我们设法通过在输出中包括所有配置选项的帮助文本来解决问题:-(我为此打开了一个问题:mercurial.selenic.com/bts/issue3348
在Windows XP上,这对我来说就像是一种魅力:
C:\Program Files\Mercurial\hgrc.d
假设您已将Mercurial安装到,请转到该文件夹C:\Program Files\Mercurial\
。Mercurial.RC
在其中看到一个文件。C:\Documents and Settings\ [USERNAME]\
Mercurial.RC
为Mercurial.ini
。像这样编辑[ui]部分:
[ui]
; 用于输入提交日志等的编辑器。大多数文本编辑器都可以使用。
编辑器=记事本
详细=真
用户名= userEmail@domain.com
我有同样的问题。什么帮助我是把[ui]
与username = firstname lastname
在分离的线路~/.hgrc
文件。将这两件事放在一行上不起作用,并导致错误。