有没有办法用hg pull
命令提供登录凭据(Mercurial用户名及其密码)?或者无论如何通过提供用户名和密码与特定用户开始会话?我想使用Java代码和命令行API自动执行mercurial pull过程。
我知道有一种方法可以相应地构建存储库URL,例如http://user:password@host/MercurialRepo
,但这不适合我的情况。
答案 0 :(得分:4)
请参阅我的guide about remote repositories。您的选项取决于您使用的协议 - 您似乎使用您提供的示例URL中的HTTP。在这种情况下,您可以使用
use the auth
section:只要您保护Mercurial配置文件,这就是安全的。原生Mercurial解决方案,因此适用于所有平台。
keyring extension:自您的操作系统以来,auth
部分可以更加安全地将密码以加密形式存储在磁盘上。该扩展适用于所有平台,但您需要自己安装和配置它 - 它是TortoiseHg的一部分,但不是Mercurial本身。
在网址中嵌入密码:这很容易,但很不安全,你已经拒绝了。
最后,既然你提到了Java,我就指向你JavaHg。这是一个用于与Mercurial交互的Java库。它对pull和clone中的用户名和passwors没有任何特殊支持,所以我建议暂时使用auth
部分。