每次进行远程Mercurial操作时,有没有办法让Bitbucket不要求我的密码?

随着所有其他的Mercurial回购,我可以设置我的用户名和密码在我的hgrc(实际上,因为我使用的Windows Mercurial.ini)在特定的领域进行操作,Mercurial不会提示我auth信息。 但是,即使有这些设置,Bitbucket 总是要求我的密码。

我的设置如下:

[auth] bitbucket.prefix = bitbucket.org bitbucket.username = myusername bitbucket.password = mypassword 

正如我所说,这些设置适用于所有其他我推动的回购。

这里发现的问题是,我在我的Bitbucket存储库的页面上显示的库中使用了URL,其中包括位于bitbucket域名前面的用户名,所以最终看起来像https://myusername@bitbucket.org/myusername/myrepo

显然,用这种方式提供用户名时,会忽略[auth]部分的内容。 我只是改变了我的本地克隆repo的hgrc的URL,它拿起[auth]部分的东西就好了。

对于不在问题中包含这个细节的道歉。

您是否使用了bitbucket或https://url的ssh://url? Bitbucket提供了两个。 如果是ssh,则需要使用ssh-agent或类似的(ssh不使用[auth]部分)来将密钥保存在内存中或切换到https:URL。 您也可以尝试添加bitbucket.schemes = http https以防万一,如果您使用的是https://url,那么https的默认值应该没问题。 另外请注意,bitbucket用户名区分大小写 – 这让我有一段时间。

如果没有任何工作为您尝试开启--debugdebugging,看看是否有任何消息帮助。