由于GitHub在2021年废弃了基础认证,使用用户名和密码直接通过HTTPS方式访问仓库的方式已经不再支持。现在,你需要使用个人访问令牌(Personal Access Token, 简称PAT)作为替代认证方式来提交代码到仓库。个人访问令牌实质上是一串由平台生成的代码,用以替代密码进行认证,可以给予令牌不同的权限来限制访问范围。
以下是使用Git和个人访问令牌提交代码到仓库的步骤:
步骤 1: 生成个人访问令牌
- 登录到你的GitHub账户。
- 转到设置(Settings) > 开发者设置(Developer settings) > 个人访问令牌(Personal access tokens)。
- 点击“生成新令牌”(Generate new token)。
- 给令牌命名,并设置过期时间。
- 选择令牌的作用范围(scope)。例如,要提交代码,你至少需要勾选
repo
范围。 - 生成令牌并复制,确保保存在一个安全的地方,因为令牌生成后只会显示一次。
步骤 2: 使用令牌进行Git认证
当使用HTTPS方式克隆仓库或进行操作时,Git 会要求你输入用户名和密码。在这个场景下,你的用户名就是你的GitHub用户名,密码则替换为你刚刚生成的个人访问令牌。
git clone https://github.com/username/repo.git
Username: your_username
Password: your_personal_access_token
如果之前已经通过HTTPS方式克隆了仓库,那么在推送时也会要求认证。此时同样输入GitHub用户名和个人访问令牌即可。
git push
Username: your_username
Password: your_personal_access_token
步骤 3: 缓存你的令牌(可选)
为了避免每次操作都需要输入个人访问令牌,你可以在Git中缓存你的认证信息。Git提供了几种方式来保存认证信息,例如使用凭据助手(credential helper)。
# 设置Git以使用凭据存储,这样就不需要每次都输入用户名和令牌
git config --global credential.helper store
当你下次进行Git操作并输入令牌后,Git会将其存储在磁盘上。这意味着你不必再输入令牌,直到令牌过期或被撤销。
请记住,将个人访问令牌存储在磁盘上可能会带来安全风险,特别是在共享或不安全的机器上。确保你理解这些风险,并采取适当的安全措施来保护你的凭据。如果你对安全性有更高的要求,可以考虑使用SSH方式进行认证,这样不需要频繁输入密码或令牌。