You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Linux(Ubuntu/Debian)下保存GitHub登录凭据?

解决Ubuntu/Debian下Git操作GitHub私有仓库重复输入令牌的问题

方法1:使用Git凭据助手(推荐)

Git自带凭据管理工具,可自动保存令牌,避免重复输入。

临时缓存(会话内有效)

运行以下命令,令牌会缓存到内存中,默认15分钟有效期:

git config --global credential.helper cache

如需延长有效期(例如1小时):

git config --global credential.helper 'cache --timeout=3600'

持久化存储(安全永久保存)

该方案将令牌存储在系统密钥管理服务(如GNOME Keyring)中,安全性更高:

  1. 安装依赖包:
sudo apt install libsecret-1-0 libsecret-1-dev
  1. 编译并安装对应凭据助手:
cd /usr/share/doc/git/contrib/credential/libsecret
sudo make
  1. 配置Git使用该助手:
git config --global credential.helper /usr/share/doc/git/contrib/credential/libsecret/git-credential-libsecret

完成后再输入一次令牌,后续操作将自动读取,无需重复输入。

文件存储(明文,不推荐)

若不在意明文存储,可将令牌保存到本地文件:

git config --global credential.helper store

首次输入令牌后,会自动写入~/.git-credentials文件,需手动设置权限避免泄露:

chmod 600 ~/.git-credentials

方法2:修改远程仓库URL(嵌入令牌)

将GitHub令牌直接包含在远程仓库的HTTPS URL中,Git会自动用令牌验证:

  1. 查看当前远程URL:
git remote -v
  1. 修改为含令牌的格式(替换<你的令牌>、<用户名>、<仓库名>):
git remote set-url origin https://<你的令牌>@github.com/<用户名>/<仓库名>.git

注意:令牌会明文保存在本地.git/config文件中,公共机器请勿使用。

方法3:改用SSH密钥认证(更安全)

替换HTTPS为SSH密钥认证,彻底告别凭据输入:

  1. 生成SSH密钥对(一路回车使用默认配置):
ssh-keygen -t ed25519 -C "你的GitHub邮箱"
  1. 复制公钥内容:
cat ~/.ssh/id_ed25519.pub
  1. 登录GitHub,进入「Settings」→「SSH and GPG keys」→「New SSH key」,粘贴公钥内容并保存。
  2. 修改远程仓库URL为SSH格式(替换<用户名>、<仓库名>):
git remote set-url origin git@github.com:<用户名>/<仓库名>.git

后续操作仓库无需输入任何凭据,只要本地密钥存在即可正常验证。

内容的提问来源于stack exchange,提问作者vantienpham

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.24 10:12:55