git permission deny ,重新生成秘钥

本文详细介绍如何在本地计算机上生成SSH密钥,并将其添加到GitHub账户中,实现免密码登录GitHub。步骤包括:在gitBash中生成SSH密钥、添加密钥到SSH agent、在GitHub上添加SSH公钥,最后测试连接。
  1. 打开 git Bash.

  2. 输入以下命令:(your_email@example.com 为你注册git的邮箱地址

    $ ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
  3. 但有显示 "Enter a file in which to save the key," 请按 Enter 键 ,这样就使用默认的存储位置和名字

    > Enter a file in which to save the key (/c/Users/you/.ssh/id_rsa):[Press enter]
    
    最后得到了两个文件:id_rsa和id_rsa.pub, 这两个文件会保存在C:\Users\XX\.ssh (XX为当前登录电脑的用户名)
  4. 添加密钥到ssh ,执行:   

ssh-add ~/.ssh/id_rsa  

如果显示如下错误:

Could not open a connection to your authentication agent,则先执行如下命令即可:

  ssh-agent bash

 5. .在github上添加ssh密钥

这要添加的是“id_rsa.pub”里面的公钥,

打开https://github.com/ ,然后登录, 点击个人信息和设置-》 SSH 和GPG秘钥 -》管理 SSH 密钥-》添加

用记事本打开C:\Users\XX\.ssh\id_rsa.pub 文件,将里面的所有内容复制粘贴

6. 测试:ssh -vvv git@githup.com

官网原话描述:

https://help.github.com/en/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent

说白了,信息需要和你客户端的信息一致:

生成 Git 使用的 SSH 秘钥,可以通过以下命令实现。SSH 秘钥用于在本地计算机与 Git 服务器(如 GitLab、GitHub)之间建立安全连接。运行命令前,请确保已安装 Git 和 OpenSSH 客户端。 ### 生成默认的 SSH 秘钥 如果尚未存在 SSH 秘钥,可以使用以下命令生成一个新的秘钥对: ```bash ssh-keygen -t rsa -b 4096 -C "your_email@example.com" ``` 该命令会创建一个默认路径为 `~/.ssh/id_rsa` 的私钥和 `~/.ssh/id_rsa.pub` 的公钥文件。生成过程中会提示输入密码(可选),用于增强秘钥的安全性。 ### 指定文件名生成 SSH 秘钥 如果需要将秘钥保存为特定名称,例如 `git_rsa`,可以使用以下命令: ```bash ssh-keygen -t rsa -b 4096 -C "your_email@example.com" -f ~/.ssh/git_rsa ``` 这将在 `~/.ssh/` 目录下生成 `git_rsa`(私钥)和 `git_rsa.pub`(公钥)文件。 ### 查看公钥内容 生成秘钥后,可以通过以下命令查看公钥内容,并将其添加到 Git 服务器的 SSH Keys 设置中: ```bash cat ~/.ssh/id_rsa.pub ``` 输出的内容以 `ssh-rsa` 开头,包含一串字符和用户的邮箱地址,例如: ``` ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQD... your_email@example.com ``` 请将整段内容复制并粘贴到 Git 服务器的 SSH Key 配置界面中。 ### 配置 SSH 客户端(可选) 如果生成秘钥文件不是默认名称(如 `id_rsa`),需要手动配置 SSH 客户端以使用该秘钥。编辑 `~/.ssh/config` 文件并添加以下内容: ```bash Host gitlab.com HostName gitlab.com User git IdentityFile ~/.ssh/git_rsa ``` 替换 `gitlab.com` 和 `IdentityFile` 的值以匹配实际的 Git 服务器和秘钥路径。 ### 添加秘钥到 SSH Agent 为了确保 Git 能够正确使用 SSH 秘钥,需要将私钥添加到 SSH Agent 中: ```bash eval "$(ssh-agent -s)" ssh-add ~/.ssh/id_rsa ``` 如果使用的是自定义秘钥路径(如 `git_rsa`),请将 `id_rsa` 替换为实际的文件名: ```bash ssh-add ~/.ssh/git_rsa ``` 完成上述步骤后,SSH 秘钥即可用于 Git 操作,如克隆仓库、提交代码等。 ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值