前言
参考官方文档:GitHub 入门文档
第五章·第三部分:Github 身份验证方式 PAT 和 SSH
Github 通过 Git CLI 方式进行管理,常用的身份验证的方式为 PAT 和 SSH,可以单独分别使用,没有相关联系。
一、PAT 简介
1.1 什么是个人访问令牌(PAT)?
**个人访问令牌(Personal Access Token)是 GitHub 提供的一种用于替代密码的安全凭证。**可以把它理解为:一个用于访问 GitHub API、推送代码、克隆仓库的'一次性密码/授权密钥'。
自 2021 年之后:
- GitHub 不再允许命令行使用账户密码登录
- 在 git push、git pull、clone 时必须使用:
✔ 2FA
✔ 个人访问令牌(PAT)
✔ SSH Key
✔ 或 GitHub CLI 登录
1.2 为什么需要 PAT?(关键原因)
✔ 1. 更安全
密码权限太大且不方便管理,PAT 权限可控,可以随时撤销。
✔ 2. 可以设置不同的权限范围
如:
- 只允许读仓库
- 允许推送
- 允许管理 actions
- 允许删除包
权限越小越安全。
✔ 3. 可以指定过期时间
不会像密码那样无限生效。
✔ 4. 可以随时撤销某个设备或脚本用的 PAT
避免泄露后无法追踪。
1.3 核心用途
- 替代「密码」,用于**命令行(git 操作)、第三方工具(VS Code、Git 客户端、API 调用)**访问 GitHub。
- 例如:用 git clone/push/pull 命令操作远程仓库、用 VS Code 直接连接 GitHub 仓库、调用 GitHub API 获取数据。
1.4 适用场景
- 本地电脑用 git 命令操作 GitHub 仓库(最常用);
- 第三方工具(如 PyCharm、Sourcetree)授权访问 GitHub;
- 开发时调用 GitHub API(如获取仓库列表、提交记录)。
1.5 两种类型的 PAT
GitHub 有两个不同版本:
⭐ 1) Fine-grained personal access tokens(精细化令牌)——推荐使用
当前 GitHub 主推的方式。
特点:
- 可以精确指定仓库权限(例如只给一个仓库读写权限)
- 可以设置细粒度操作权限
- 更安全
- 默认过期
适合 绝大多数开发者。
⭐ 2) Classic personal access tokens(经典令牌)
旧版,还能用,但不推荐,操作简单,初学者可以尝试。
特点:
- 权限范围更大(风险高)
- 无法指定到单仓库
- 常用于一些旧工具、CI、脚本
⭐ 3) 传统令牌 vs 细粒度令牌:
- 传统令牌权限范围更宽泛,适合需要跨模块权限(如同时操作仓库和用户信息)的场景;
- 细粒度令牌权限更精细,适合仅需操作特定仓库或功能的场景。

