如果你希望将 Git 提交代码的身份验证方式从用户名和密码切换到 SSH,你需要进行以下几个步骤:
1. 生成 SSH 密钥对
如果你还没有 SSH 密钥对,可以使用以下命令生成一个新的密钥对:
bash
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
-t rsa
指定密钥类型为 RSA。-b 4096
指定密钥长度为 4096 位。-C "your_email@example.com"
添加一个注释(通常是你的邮箱)。
按照提示选择保存位置(默认是 ~/.ssh/id_rsa
)和设置密码(如果需要)。
2. 将公钥添加到你的 Git 账户
找到生成的公钥(~/.ssh/id_rsa.pub
)并将其添加到你的 Git 账户(如 GitHub、GitLab 或 Bitbucket):
-
查看公钥内容:
bashcat ~/.ssh/id_rsa.pub
-
将公钥复制到剪贴板:
bashcat ~/.ssh/id_rsa.pub | clip # Windows pbcopy < ~/.ssh/id_rsa.pub # macOS xclip -sel clip < ~/.ssh/id_rsa.pub # Linux
-
登录到你的 Git 账户,进入 SSH 密钥设置页面,粘贴公钥并保存。
- GitHub : GitHub SSH Key Settings
- GitLab : GitLab SSH Key Settings
- Bitbucket : Bitbucket SSH Key Settings
3. 配置 Git 使用 SSH
更新 Git 远程仓库的 URL,使用 SSH 协议代替 HTTPS:
-
查看当前的远程仓库 URL:
bashgit remote -v
-
将远程仓库 URL 更改为 SSH:
-
GitHub:
bashgit remote set-url origin git@github.com:username/repository.git
-
GitLab:
bashgit remote set-url origin git@gitlab.com:username/repository.git
-
Bitbucket:
bashgit remote set-url origin git@bitbucket.org:username/repository.git
将
username
和repository
替换为你的用户名和仓库名。 -
-
验证配置是否正确:
bashgit remote -v
确保显示的 URL 使用 SSH 协议(
git@...
)。
4. 测试 SSH 连接
使用以下命令测试与远程仓库的 SSH 连接:
-
GitHub:
bashssh -T git@github.com
-
GitLab:
bashssh -T git@gitlab.com
-
Bitbucket:
bashssh -T git@bitbucket.org
如果一切设置正确,你应该看到一条欢迎消息或成功连接的提示。
完成上述步骤后,你的 Git 提交代码将使用 SSH 密钥进行身份验证,而不再需要输入用户名和密码。