jcu*_*bic 76 ssh git ssh-keys git-bash
我正在使用 git bash 并使用 ssh-keygen 设置 ssh 密钥,每次我用 repo git 做某事时都会问我/c/Users/jankiewj/.ssh/id_rsa
. 有没有办法禁用该密码。
编辑: 我编辑了原始标题(删除了 Windows),因为我刚刚在我的工作笔记本电脑上使用了全新安装的 Ubuntu,当 ssh 密钥有密码时,它总是要求它,解决这个问题的解决方案是一样的。这可能在同样是 Unix 的 MacOSX 上工作相同,并使用相同的基本工具。
jcu*_*bic 98
您可以在 git bash、Windows WLS 或真正的 GNU/Linux 上的 bash 中运行它。
eval `ssh-agent -s`
ssh-add ~/.ssh/*_rsa
Run Code Online (Sandbox Code Playgroud)
它会在第二个命令中要求输入密码,仅此而已。您需要执行的每个附加操作(曾经需要密码短语)都不会要求您输入密码短语(请参阅下面屏幕截图中的示例):
小智 27
一个稍微好一点的永久解决方案是在 Windows 上打开 git bash 时自动启动 ssh-agent。您可以在 .profile 或 .bashrc 中复制/粘贴以下内容。我更喜欢把它放在.profile 上
env=~/.ssh/agent.env
agent_load_env () { test -f "$env" && . "$env" >| /dev/null ; }
agent_start () {
(umask 077; ssh-agent >| "$env")
. "$env" >| /dev/null ; }
agent_load_env
# agent_run_state: 0=agent running w/ key; 1=agent w/o key; 2= agent not running
agent_run_state=$(ssh-add -l >| /dev/null 2>&1; echo $?)
if [ ! "$SSH_AUTH_SOCK" ] || [ $agent_run_state = 2 ]; then
agent_start
ssh-add
elif [ "$SSH_AUTH_SOCK" ] && [ $agent_run_state = 1 ]; then
ssh-add
fi
unset env
Run Code Online (Sandbox Code Playgroud)
此解决方案取自此 github 帮助文章
归档时间: |
|
查看次数: |
81338 次 |
最近记录: |