Jenkins远程执行Shell脚本git pull时无法读取密码问题求助
Bitbucket + Jenkins Git Pull 密码读取错误排查方案
1. 核对Jenkins凭证配置
- 在全局凭证或任务专属凭证中添加「用户名和密码」类型凭证:用户名填Bitbucket账号名,密码填Bitbucket应用密码/访问令牌
- 任务的Git仓库URL不要硬编码凭证,使用
https://bitbucket.org/[你的团队]/[你的仓库].git,然后在「凭证」下拉框选择已配置的凭证
2. 调整Shell脚本中的Git命令
- 避免直接执行
git pull,改为指定分支拉取:cd [你的项目目录] && git pull origin [目标分支] - 若需单独拉取,确保脚本复用Jenkins已配置的凭证上下文,不要手动输入账号密码
3. SSH链接问题排查
- 确认Jenkins运行用户(如
jenkins)的~/.ssh目录下存在私钥,且对应公钥已添加至Bitbucket账号的SSH密钥列表 - 在Jenkins服务器切换至运行用户,执行
ssh -T git@bitbucket.org验证SSH连通性 - 任务Git URL改用SSH格式:
git@bitbucket.org:[你的团队]/[你的仓库].git,并配置对应的SSH凭证
4. 检查Jenkins运行用户环境
- 确保Jenkins运行用户对项目工作目录拥有完整读写权限
- 若Git凭证助手异常,可在脚本中临时配置:
git config credential.helper 'cache --timeout=3600',优先使用Jenkins自带凭证管理机制
内容的提问来源于stack exchange,提问作者Bala
相关产品推荐
相关产品推荐

