为什么 git identity 在 bitbucket repo 中不断丢失?
Why git identity is keep losing with bitbucket repo?
每当我需要在 Win10 开发笔记本电脑上 bitbucket.org 上 git pull
或 git push
回购时,几乎每次我都需要先添加身份才能执行此操作。这是 ssh -T
:
$ ssh -T git@bitbucket.org
Permission denied (publickey).
然后在eval "$(ssh-agent)
和ssh-add ~/.ssh/id_rsa
之后,我可以git pull
或git push
。下次我需要再次重复这个过程。为什么身份不断丢失?如何一次性添加身份?
一个好的开始是了解您正在执行的步骤以及 ssh-agent
的工作原理或如何做得更好。
SSH-Agent 是一个将您的私钥存储在内存中的程序,可以让您免于为每个连接输入密码。您的 shell 使用环境变量记住与该程序的连接。因此,如果您打开新的 shell 运行 ssh-agent
并关闭 shell,您将失去此连接(Windows 无论如何都没有集成)。同时重新启动计算机(显然)会停止 运行ning 代理。
但你可能会用到
$ ssh -T -i /path/to/id_rsa git@bitbucket.org
这将执行相同的操作(如果有密码,则必须插入密码)。或者更干净地使用 ~/.ssh/config
中的 ssh_config
,其中可以包含:
Host bitbucket.org
User git
IdentityFile /path/to/id_rsa
然后使用
连接
$ ssh -T git@bitbucket.org
也可以。
每当我需要在 Win10 开发笔记本电脑上 bitbucket.org 上 git pull
或 git push
回购时,几乎每次我都需要先添加身份才能执行此操作。这是 ssh -T
:
$ ssh -T git@bitbucket.org
Permission denied (publickey).
然后在eval "$(ssh-agent)
和ssh-add ~/.ssh/id_rsa
之后,我可以git pull
或git push
。下次我需要再次重复这个过程。为什么身份不断丢失?如何一次性添加身份?
一个好的开始是了解您正在执行的步骤以及 ssh-agent
的工作原理或如何做得更好。
SSH-Agent 是一个将您的私钥存储在内存中的程序,可以让您免于为每个连接输入密码。您的 shell 使用环境变量记住与该程序的连接。因此,如果您打开新的 shell 运行 ssh-agent
并关闭 shell,您将失去此连接(Windows 无论如何都没有集成)。同时重新启动计算机(显然)会停止 运行ning 代理。
但你可能会用到
$ ssh -T -i /path/to/id_rsa git@bitbucket.org
这将执行相同的操作(如果有密码,则必须插入密码)。或者更干净地使用 ~/.ssh/config
中的 ssh_config
,其中可以包含:
Host bitbucket.org
User git
IdentityFile /path/to/id_rsa
然后使用
连接$ ssh -T git@bitbucket.org
也可以。