github配置ssh连接
文章目录
- github连接方式
- 对比总结
- 选择建议:
- github配置ssh连接
- 1. 打开 Git Bash
- 2. 生成 SSH 密钥
- 3. 选择保存位置
- 4. 设置密码(可选)
- 5. 生成密钥
- 6. 启动 SSH 代理
- 7. 添加私钥到 SSH 代理
- 8. 查看并复制公钥
- 9.在github配置密钥
- 总结
- 如何检查是否能够连接成功?
- **尝试使用 HTTPS 端口**
- 解决方法:
github连接方式
GitHub 提供两种主要的连接方式:HTTPS 和 SSH。它们各有特点,适用于不同的场景。以下是它们的详细对比:
对比总结
特性 | HTTPS | SSH |
---|---|---|
URL 格式 | https://github.com/username/repo.git | git@github.com:username/repo.git |
身份验证 | 用户名 + Personal Access Token | SSH 密钥对 |
安全性 | 较高 | 更高 |
是否需要配置 | 无需额外配置 | 需要生成并配置 SSH 密钥 |
适合场景 | 临时访问、初学者 | 频繁操作、自动化、多账户管理 |
防火墙兼容性 | 兼容性好 | 可能受限 |
选择建议:
- 如果你是初学者或只需要临时访问仓库,可以使用 HTTPS。
- 如果你需要频繁操作仓库或需要更高的安全性,建议使用 SSH。
- 如果你希望通过命令行管理 GitHub 资源,可以尝试 GitHub CLI。
github配置ssh连接
我们通过Git Bash来配置密钥
要通过 Git Bash 生成 SSH 密钥,可以按照以下步骤操作:
1. 打开 Git Bash
在 Windows 上,打开 Git Bash 终端。
2. 生成 SSH 密钥
使用以下命令生成 SSH 密钥:
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
-t rsa
:指定密钥类型为 RSA。-b 4096
:指定密钥长度为 4096 位(默认 2048 位)。-C "your_email@example.com"
:添加注释,通常用你的邮箱。
3. 选择保存位置
按提示选择密钥保存位置,默认路径为 ~/.ssh/id_rsa
,直接按 Enter 使用默认路径。
4. 设置密码(可选)
你可以选择为密钥设置密码,直接按 Enter 跳过。
5. 生成密钥
完成后,系统会在 ~/.ssh/
目录下生成两个文件:
id_rsa
:私钥id_rsa.pub
:公钥
6. 启动 SSH 代理
使用以下命令启动 SSH 代理:
eval "$(ssh-agent -s)"
7. 添加私钥到 SSH 代理
将私钥添加到 SSH 代理:
ssh-add ~/.ssh/id_rsa
8. 查看并复制公钥
使用以下命令查看公钥:
cat ~/.ssh/id_rsa.pub
9.在github配置密钥
参照博主的用法
总结
通过以上步骤,你已成功生成 SSH 密钥并配置好 Git Bash。
如何检查是否能够连接成功?
通过输入下面的命令进行测试
ssh -T git@github.com
但是会出现下面的报错
从错误信息 ssh: connect to host github.com port 22: Connection timed out
来看,你的 SSH 连接尝试超时了。这通常是由于网络问题或防火墙阻止了 SSH 连接(端口 22)。
其实在开梯子之后,还会出现这个问题,那就是
22端口使用不了,所以我们可以使用HTTPS的443端口
尝试使用 HTTPS 端口
如果端口 22 被阻止,可以尝试通过 HTTPS 端口(443)进行 SSH 连接。
解决方法:
编辑 ~/.ssh/config
文件(如果文件不存在,可以创建),添加以下内容:
可以在
Git Bash
中使用命令在对应的文件夹中
创建,然后再使用记事本打开
touch config
然后再这个
config
文件里面输入以下内容,注意这个xxx@163.com换成你自己注册github的时候的邮箱
Host github.com
User xxx@163.com
Hostname ssh.github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa
Port 443
然后重新测试 SSH 连接:
ssh -T git@github.com