解决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
相关推荐
不怕犯错,就怕不做5 小时前
git prune 自动删除本地记录中那些远程已经不存在的分支引用
linux·服务器·git
ELI_He99911 小时前
如何还原已经推送的提交
git
️学习的小王12 小时前
Git项目提交忽略文件怎么做?以Python项目为例,详解.gitignore
git·python·elasticsearch
愚蠢得人13 小时前
Git Worktree实用指南:同时开发两个分支,不再反复切换
git
kingbal16 小时前
MAC:chatgpt登陆报错签名异常
macos·chatgpt
k4m7v2pz16 小时前
macOS 窗口最小化:三种写法的实测对比与可复用脚本
macos·窗口管理·截屏·applescript·bevy·ai自动化
lskaixin17 小时前
Git命令
git
_道隐_19 小时前
git 如何把一个已经commit到本地分支的,被错误staged的文件,单独拿出来revert呢?
git
lingran__19 小时前
Git 完全指南(一):本地仓库基础操作
linux·git·开发工具·devops·版本控制
星空20 小时前
git使用
git