解决mac下git pull、push需要输入密码

解决方法:

1.强制配置 SSH 自动加载钥匙串

编辑 SSH 配置文件

复制代码
vi ~/.ssh/config

Host *
  AddKeysToAgent yes          # 自动将密钥添加到 ssh-agent
  UseKeychain yes             # 明确使用钥匙串存储密码
  IdentityFile ~/.ssh/id_rsa  # 替换为你的私钥路径
2.修复 Shell 环境配置

编辑 shell 配置文件

复制代码
vi ~/.bash_profile

添加以下代码(解决 ssh-agent 不自动加载的问题)

复制代码
# 自动启动 ssh-agent 并加载密钥
if [ -z "$SSH_AUTH_SOCK" ]; then
   eval "$(ssh-agent -s)" > /dev/null
   ssh-add --apple-use-keychain ~/.ssh/id_rsa 2>/dev/null
fi

使配置生效

复制代码
source ~/.bash_profile
3.彻底清理并重新添加密钥

清除所有已缓存的密钥

复制代码
ssh-add -D

重新添加密钥到钥匙串

复制代码
ssh-add --apple-use-keychain ~/.ssh/id_rsa
相关推荐
kyriewen2 小时前
别再每次都 Google 了:我整理了前端日常最常踩的 10 个 Git 坑,附速查表
前端·javascript·git
Mintimate2 天前
WorkBuddy 上手: 让脚本项目 Homebrew CN 变成会排障的 Agent
macos·边缘计算·agent
A_Lonely_Cat2 天前
记一次 GitHub 幽灵协作者大清洗:强制重写 Git 历史与穿透 CDN 缓存实践
git·github
fthux3 天前
如果你用 Mac,那你可能需要 Noti Shift
macos·开源·github
和你看星星4 天前
Git rerere:让重复冲突只解决一次
git
counterxing6 天前
最近发现一个 Mac 工具,有点像把 Raycast、语音输入法、截图和录屏塞到了一起
macos·ai编程·claude
嘻嘻仙人8 天前
Ubuntu中 git上传自己的项目和二次上传一般流程
git·github
Patrick_Wilson8 天前
Squash Merge 的血缘陷阱:为什么删掉的代码又活了过来
前端·git·程序员
沉浸学习的匿名网友8 天前
什么是 .gitignore?为什么每个 Git 项目几乎都离不开它?
前端·git
深海鱼在掘金9 天前
Git 完全指南 —— 第3章:理解工作区、暂存区、版本库三个核心
git