Git 吉特+;bitbucket-ssh脚本问题

Git 吉特+;bitbucket-ssh脚本问题,git,ssh,version-control,bitbucket,Git,Ssh,Version Control,Bitbucket,《关于使用ssh的Bitbucket指南》提供了一个脚本,我已将其添加到bashrc中,但当它运行时,它会自动显示为已连接,而不是请求密码短语。当我跑的时候 ssh-add -l 我收到消息“代理没有身份。” 我在windows上,设置了.ssh目录,其中包含配置、环境和已知的\u主机文件。此外,我在这里放置了一个KEYS目录,其中保存生成的ssh密钥 生成了环境和已知的_主机,但我自己创建了配置, 它只包含以下内容 Host bitbucket.org IdentityFile ~/.ss

《关于使用ssh的Bitbucket指南》提供了一个脚本,我已将其添加到bashrc中,但当它运行时,它会自动显示为已连接,而不是请求密码短语。当我跑的时候

ssh-add -l
我收到消息“代理没有身份。”

我在windows上,设置了.ssh目录,其中包含配置、环境和已知的\u主机文件。此外,我在这里放置了一个KEYS目录,其中保存生成的ssh密钥

生成了环境和已知的_主机,但我自己创建了配置, 它只包含以下内容

Host bitbucket.org
 IdentityFile ~/.ssh/KEYS/theMachine
我不知道环境文件数据是什么意思,所以我暂时不发布它

以下指南位于此处:


我已经完成了第6步,但是我被困在了第4步。

您将密钥存储在不同的位置,因此
ssh add
无法找到它(它无法读取您的配置——教程不太好)

您应该将
~/.ssh/KEYS/theMachine
移动到
~/.ssh/id\u rsa
。对并将
~/.ssh/KEYS/theMachine.pub
移动到
~/.ssh/id\u rsa.pub
。它会解决你的问题


另一种解决方案是修改
~/.bashrc
中的行

/usr/bin/ssh-add


您将密钥存储在不同的位置,因此
ssh add
无法找到它(它无法读取您的配置——教程不太好)

您应该将
~/.ssh/KEYS/theMachine
移动到
~/.ssh/id\u rsa
。对并将
~/.ssh/KEYS/theMachine.pub
移动到
~/.ssh/id\u rsa.pub
。它会解决你的问题


另一种解决方案是修改
~/.bashrc
中的行

/usr/bin/ssh-add

代理没有身份

欲了解更多信息,请阅读此


按照这些步骤启动并添加ssh密钥和代理

# start the ssh agent service
eval $(ssh-agent)

# your keys should now be automatically loaded from the ~/.ssh folder
# but just in case to verify that they were loaded:
ssh-add
代理没有身份

欲了解更多信息,请阅读此


按照这些步骤启动并添加ssh密钥和代理

# start the ssh agent service
eval $(ssh-agent)

# your keys should now be automatically loaded from the ~/.ssh folder
# but just in case to verify that they were loaded:
ssh-add

谢谢你的回答,我收到的另一个答案有效,所以我接受了。但是你能解释一下它的作用吗?ssh代理有时会停止工作,所以eval只需重新启动它。当它重新启动时,它从默认位置读取密钥,除非你给它不同的位置
ssh代理本身不应该停止工作,除非周围的东西坏了。如果代理未运行,它将写入
无法打开与身份验证代理的连接。
。这真的不是在回答问题。偶尔我不得不使用eval来启动服务。通常在虚拟机图像上。谢谢你的回答,我收到的另一个答案有效,所以我接受了。但是你能解释一下它的作用吗?ssh代理有时会停止工作,所以eval只需重新启动它。当它重新启动时,它从默认位置读取密钥,除非你给它不同的位置
ssh代理本身不应该停止工作,除非周围的东西坏了。如果代理未运行,它将写入
无法打开与身份验证代理的连接。
。这真的不是在回答问题。偶尔我不得不使用eval来启动服务。通常在虚拟机映像上。