解决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
相关推荐
互联网中的一颗神经元3 小时前
19 — 贮藏与清理:stash 是抽屉,gc 是打包箱
git
做萤石二次开发的哈哈4 小时前
开发者如何调用 ERTC iOS API 完成 SDK 初始化配置?
macos·objective-c·cocoa
用户330144867635 小时前
20 — 远程进阶:强制推送的保险绳——force-with-lease
git
Cooper255 小时前
别急着改 Git 历史:rebase、cherry-pick、bisect 与 reflog 的安全操作顺序
git
AUV11076 小时前
Mac 录屏自动缩放怎么设置才不乱跳:自动片段、固定区域与鼠标跟随调试
macos·计算机外设
刚入门的大一新生6 小时前
Linux-版本控制器Git
git
扶苏10026 小时前
同一个 Git 项目整出两份,切分支互不影响?两种方案实测
大数据·git·elasticsearch
ZJU_统一阿萨姆7 小时前
【Git】Github 开源许可证详解
git·开源·github
程序员良辰7 小时前
【Mac快速切换JDK】Mac 使用 Homebrew + jenv 快速切换 JDK 版本
java·开发语言·macos
coding4u1 天前
Mac 外接显示器完全指南:从插上线到调好每个参数
macos·计算机外设·文件管理·显示器·策略模式·quick look扩展