You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

配置Bitbucket SSH密钥后每次git push仍需输密码短语排查

解决Bitbucket SSH密钥每次Git Push都要输密码短语的问题

嘿,我之前也碰到过完全一样的困扰!其实你核心的SSH配置没做错——这个需要输入的密码短语是你给私钥本身设置的保护密码,SSH默认不会自动缓存它,所以每次使用密钥的时候都得手动输入。咱们可以通过ssh-agent来解决这个问题,让它帮你记住密码短语,只需要输入一次就行。

具体解决步骤

1. 检查并启动ssh-agent

首先确认ssh-agent是否在后台运行:

echo $SSH_AGENT_PID

如果没有输出任何进程ID,说明agent没启动,执行下面的命令启动它:

eval "$(ssh-agent -s)"

2. 将私钥添加到ssh-agent

把你的Bitbucket私钥添加到agent的缓存中:

ssh-add ~/.ssh/bitbucket-ssh-key

这时候会提示你输入一次密钥的密码短语,输入后,后续的Git操作(push/pull等)就不用再输了。

3. 让设置永久生效(可选)

如果不想每次开机都手动启动agent和添加密钥,可以把下面的代码添加到你的shell配置文件里(比如~/.bashrc、~/.zshrc,取决于你用的是Bash还是Zsh):

# 自动启动ssh-agent并加载Bitbucket密钥
if [ -z "$SSH_AUTH_SOCK" ]; then
  eval "$(ssh-agent -s)"
  ssh-add ~/.ssh/bitbucket-ssh-key
fi

保存文件后,重启终端或者执行source ~/.bashrc(对应你的配置文件)就能生效了。

额外检查:确保密钥权限正确

SSH对密钥文件的权限要求很严格,错误的权限可能导致验证问题(虽然你说身份验证正常,但还是确认下更稳妥):

  • 设置私钥权限为仅自己可读可写:
    chmod 600 ~/.ssh/bitbucket-ssh-key
    
  • 设置公钥权限为可读:
    chmod 644 ~/.ssh/bitbucket-ssh-key.pub
    

内容的提问来源于stack exchange,提问作者Samusz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 10:10:49