使用 SSH 方式克隆 GitHub 仓库没有权限解决办法
【问题详述】
Linux git 命令使用 SSH 方式克隆 GitHub 仓库没有权限
【解决思路】
1. 检查是否已生成 SSH 密钥:
在终端中执行以下命令,查看本地是否已经存在 SSH 密钥:
ls -al ~/.ssh
如果看到 id_rsa
和 id_rsa.pub
(或者 id_ed25519
和 id_ed25519.pub
)这样的文件,说明已经生成过 SSH 密钥。其中,带有 .pub
后缀的是公钥文件,另一个是私钥文件。
2. 生成 SSH 密钥(如果没有)
如果本地没有 SSH 密钥,可以使用以下命令生成。推荐使用 ed25519
算法,它是一种更安全、更高效的加密算法:
ssh-keygen -t ed25519 -C "your_email@example.com"
将 your_email@example.com
替换为你在 GitHub 上注册的邮箱地址。执行命令后,按回车键接受默认的保存位置和密码设置(如果需要设置密码,也可以按提示操作)。
① 添加 SSH 密钥到 GitHub
获取公钥内容:使用以下命令查看公钥内容:
cat ~/.ssh/id_ed25519.pub
登录 GitHub:打开浏览器,登录到你的 GitHub 账号。
进入 SSH 密钥设置页面:点击右上角的头像,选择 “Settings”(设置),然后在左侧菜单中选择 “SSH and GPG keys”(SSH 和 GPG 密钥)。
添加新的 SSH 密钥:点击 “New SSH key”(新建 SSH 密钥)按钮,在 “Title”(标题)栏中输入一个描述性的名称(比如 “My Laptop” ),然后将复制的公钥内容粘贴到 “Key”(密钥)文本框中,最后点击 “Add SSH key”(添加 SSH 密钥)按钮。
3. 测试 SSH 连接
在终端中执行以下命令,测试与 GitHub 的 SSH 连接:
ssh -T git@github.com
如果看到 Hi your_username! You've successfully authenticated, but GitHub does not provide shell access.
这样的提示,说明 SSH 连接成功,your_username
是你的 GitHub 用户名。
4. 重新克隆仓库
完成上述步骤后,回到终端,重新执行 git clone
命令克隆仓库就 OK 了