使用凭据在HTTP服务器上进行hg推送

4

我有一个带有一些Mercurial存储库的HTTP服务器;我处理摘要认证,并发现自己经常向服务器推送更改,因此,我想知道是否有办法在hg push命令中发送凭据(用户名和密码)?

谢谢

4个回答

21

请在你的hgrc文件中使用auth部分。这将让你编写类似以下的内容:

[auth]
bb.prefix = https://bitbucket.org/
bb.username = mg
bb.password = something

使用[auth]块更加美观/清晰。 - Veger

8

太棒了...它可以运行...谢谢...我发现即使在TortoiseHG上也有一个添加用户和密码的选项,但生成的URL格式与您刚才提到的相同。!!非常感谢 - Jhonny D. Cano -Leftware-
注意:如果您有Unix服务器,可以设置“Mercurial Server”(自包含,无需http服务器),并使用ssh进行身份验证:一旦用户在会话中完成ssh-add,他们就不必再做任何其他工作以与服务器一起工作(推送,拉取等)。我发现设置Mercurial Server甚至比设置带有hgwebdir的Apache2更容易!但是您需要一个Unix服务器。缺点:您需要收集所有开发人员的公钥。优点:没有密码明文存储在任何地方。 - Christophe Muller

0

有一个默认密码扩展可以自动提供凭据。除了像Sejanus建议的那样将凭据嵌入到URL中,这并没有太多优势。它仍然是明文,但确实将您的密码放入一个单独的文件中,您可以控制其位置。如果您的工作区所在的文件系统是共享的,则没有此选项,密码将存储在.hg文件夹中。


0

TortoiseHg 0.9.3是第一个包含mercurial_keyring扩展的版本,我对它感到非常满意。前面的链接显示了使其工作所需的配置。

Mercurial 1.4.3没有包含它,但我希望它只是时间问题,它将作为Mercurial软件包的一部分提供。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接