在使用 Git 的 HTTP/HTTPS 协议拉取/推送代码时,手动输入账号密码确实很繁琐。下面我会教你两种常用的方法来让 Git 记住账号密码,从临时缓存到永久保存都有覆盖。
方法 1:临时缓存凭证(推荐用于临时使用)
这种方式会将账号密码缓存到内存中,默认有效期是 15 分钟,你也可以自定义时长。
操作步骤:
- 首先配置 Git 的凭证缓存机制:
# 设置缓存有效期为 1 小时(3600 秒),也可以设为 86400 秒(1 天) git config --global credential.helper 'cache --timeout=3600' - 接下来正常执行
git pull或git push,输入一次账号密码后,在缓存有效期内就无需重复输入了。
说明:
--global表示全局生效(所有仓库),如果只想针对单个仓库生效,去掉--global并进入对应仓库目录执行即可。- 缓存仅在当前终端会话有效,关闭终端后缓存会失效(即使没到超时时间)。
方法 2:永久保存凭证(推荐长期使用)
这种方式会将账号密码加密后保存在本地文件中,永久生效(除非手动清除),不同系统的保存路径不同:
- Windows:保存在「凭据管理器」中
- macOS:保存在「钥匙串」中
- Linux:保存在
~/.git-credentials文件中
操作步骤:
- 配置 Git 使用永久凭证存储:
# 全局配置(所有仓库生效) git config --global credential.helper store - 执行一次
git pull或git push,输入账号密码后,Git 会自动将凭证保存到本地文件,后续操作无需再输入。
额外说明(安全提示):
- Linux/macOS 下,凭证文件
~/.git-credentials的权限默认是600(仅当前用户可读),不要修改这个权限,避免密码泄露。 - 如果需要修改/清除保存的密码:
- 直接删除
~/.git-credentials文件(Linux/macOS); - Windows 下打开「控制面板 → 凭据管理器 → Windows 凭据」,找到对应 Git 仓库的凭证删除即可。
- 直接删除
方法 3:直接把账号密码写在仓库地址中(不推荐,仅应急)
这种方式是把账号密码嵌入到 Git 远程地址中,虽然能免输入,但存在密码泄露风险(仓库地址会明文显示密码)。
操作步骤:
# 修改远程仓库地址,格式:https://用户名:密码@仓库地址
git remote set-url origin https://your_username:your_password@github.com/xxx/xxx.git
总结
- 临时使用:用
git config --global credential.helper 'cache --timeout=秒数'缓存凭证,适合短期操作。 - 长期使用:用
git config --global credential.helper store永久保存,是日常开发的最优选择。 - 安全注意:避免将密码明文写在仓库地址中,Linux/macOS 需保证
~/.git-credentials文件权限为 600。