2010-02-19 78 views
4

我有一个HTTP服务器与一些Mercurial存储库;在那里我处理摘要认证,并且我发现自己经常向服务器推送更改,所以,我想知道是否有任何方法将hg push命令与凭据(用户和密码)一起发送?hg推HTTP服务器凭证

感谢

回答

6

使用HTTP认证,我用汞推https://user:[email protected]在hgrc文件,不知道这是否有助于在这里。

+0

酷...它的工作原理... ... TX我发现,即使在TortoiseHG有添加用户名和密码的选项,但由此产生的URL与你刚才引用的格式。 !非常感谢 – 2010-02-19 17:23:05

+0

注意:如果你有Unix服务器,你可以设置“Mercurial Server”(自包含,不需要http服务器)并使用ssh进行认证:一旦用户在会话中完成了ssh-add,他们不需要做任何其他的工作与服务器(推,拉等)。我发现设置Mercurial Server比使用hgwebdir设置Apache2更容易!但是你需要一个Unix服务器。缺点:您需要为所有开发者收集公钥。优点:没有密码存储在任何地方。 – 2010-02-19 19:16:53

0

有一个default password extension自动提供凭据。 Sejanus表示,除了在url中嵌入权利信息之外,没有太多优势。它仍然是明文,但确实将密码放入单独的文件中,您可以控制该文件的位置。如果没有这个密码,密码将存储在工作区的.hg文件夹中,所以如果您的工作区所在的文件系统是共享的,那么这可能会更好。

0

TortoiseHg 0.9.3是第一个包含mercurial_keyring扩展名的版本,我对此很满意。上一个链接显示了使其工作所需的配置。

Mercurial 1.4.3没有包含它,但我希望它作为Mercurial包的一部分可用之前只是个时间问题。

19

请在您的hgrc文件中使用auth section。这将让你写的东西,如:

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

使用'[auth]'块的更好/更清洁 – Veger 2010-08-26 08:36:19