Bitbucket上的git:总是要求输入密码,即使在上传我的公共ssh密钥之后也是如此。

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (87)

我上传了我的~/.ssh/id_rsa.pub到Bitbucket的SSH密钥,但是Git仍然在每次操作中都要求我输入密码(例如git pull)。我错过了什么吗?

它是一个私有存储库(另一个人的私有存储库的叉子),我复制了它,如下所示:

git clone git@bitbucket.org:Nicolas_Raoul/therepo.git

这是我的本地人.git/config:

[core]
        repositoryformatversion = 0
        filemode = true
        bare = false
        logallrefupdates = true
[remote "origin"]
        fetch = +refs/heads/*:refs/remotes/origin/*
        url = https://Nicolas_Raoul@bitbucket.org/Nicolas_Raoul/therepo.git
[branch "master"]
        remote = origin
        merge = refs/heads/master

在相同的环境中,使用相同的公钥,Git在Gizub上工作得很好。

.sshrwx------,,,.ssh/id_rsa-rw-------,,,.ssh/id_rsa.pub-rw-r--r--

提问于
用户回答回答于

你确定你用ssh url复制了它吗?

出处的网址上写着url = https://Nicolas_Raoul@bitbucket.org/Nicolas_Raoul/therepo.git因此,如果它使用https,它将请求密码,而不考虑ssh密钥。

用户回答回答于

如果你用SSHURL,你每次推拉时都需要输入用户名/密码。

但如果你想克隆Https想要每次输入用户名/密码时,都可以将凭据存储到高速缓存命令如下:

git config --global credential.helper 'cache --timeout 3600'

如果3600(秒)意味着1小时,你可以根据你的要求改变它。

扫码关注云+社区