配置 GitHub 访问:SSH、HTTPS 和 GitHub CLI
配置 GitHub 访问:SSH、HTTPS 和 GitHub CLI
FTDRTD配置 GitHub 访问:SSH、HTTPS 和 GitHub CLI
本文介绍如何通过 SSH 和 HTTPS 协议配置 GitHub 访问,并使用代理优化连接。此外,还介绍了 GitHub 官方的命令行工具 GitHub CLI 的安装和使用方法。本示例假定您已在本地 127.0.0.1:10808
部署了 SOCKS5 代理,并在 127.0.0.1:1080
部署了 HTTP 代理。
准备工作
在开始之前,请确保完成以下准备:
安装 Scoop(Windows 包管理器) :如果尚未安装,请按照 Scoop 安装指南 进行设置。
设置代理:确保 SOCKS5 代理运行在
127.0.0.1:10808
,HTTP 代理运行在127.0.0.1:1080
。注册 GitHub 账户:在 GitHub 上创建账户。
安装 Git:使用 Scoop 安装 Git:
1
scoop install main/git
配置 Git 用户名和邮箱:设置全局 Git 用户名和邮箱,用于标识您的提交:
1
2git config --global user.name "您的名字"
git config --global user.email "您的邮箱@example.com"验证配置是否正确:
1
2git config --global user.name
git config --global user.email
通过 SSH 协议访问 GitHub
SSH 协议通过代理配置可以绕过网络限制,适合需要安全连接的场景。以下是配置步骤:
1. 安装 nmap(包含 ncat)
使用 Scoop 安装 nmap
(包含 ncat
组件):
1 | scoop install main/nmap |
2. 配置 SSH 代理
编辑或创建 ~/.ssh/config
文件(Windows 路径通常为 C:\Users\<您的用户名>\.ssh\config
),添加以下内容:
1 | Host ssh.github.com |
说明:
ProxyCommand
使用ncat
通过 SOCKS5 代理连接 GitHub。ssh.github.com
使用Port 443
可通过 HTTPS 端口绕过某些网络限制。- 保存文件。在 Linux/macOS 上,需确保文件权限正确,运行
chmod 600 ~/.ssh/config
(Windows 可忽略)。
3. 测试 SSH 连接
运行以下命令测试连接:
1 | ssh -T git@github.com |
如果配置正确,您将看到类似 Hi <您的用户名>! You've successfully authenticated...
的消息。
注意:
- SSH 连接可能因代理或网络环境而较慢。
通过 HTTPS 协议访问 GitHub
HTTPS 协议配置简单,适合快速设置。以下是配置步骤:
1. 设置 HTTP 代理
运行以下命令配置 Git 的全局 HTTP 代理:
1 | git config --global http.proxy http://127.0.0.1:1080 |
2. 验证 HTTPS 连接
尝试克隆一个仓库以测试连接:
1 | git clone https://github.com/<您的用户名>/<仓库名>.git |
3. 关闭 HTTP 代理(可选)
如果不再需要代理,运行以下命令移除:
1 | git config --global --unset http.proxy |
注意:
- HTTPS 通常比 SSH 更快,但可能受限于网络环境。测试表明,HTTPS 在某些情况下性能优于 SSH。
使用 GitHub CLI
GitHub CLI(gh
)是 GitHub 官方提供的命令行工具,可简化仓库管理、拉取请求、问题跟踪等操作。
1. 安装 GitHub CLI
使用 Scoop 安装:
1 | scoop install main/gh |
2. 登录 GitHub CLI
运行以下命令登录您的 GitHub 账户:
1 | gh auth login |
按照提示选择 HTTPS 或 SSH 协议,并通过浏览器或令牌完成认证。
3. 常用 GitHub CLI 命令
- 克隆仓库:
1
gh repo clone <您的用户名>/<仓库名>
- 创建拉取请求:
1
gh pr create
- 查看问题列表:
1
gh issue list
更多功能请参考 GitHub CLI 官方文档。
性能对比与建议
- SSH:通过
ssh.github.com:443
和 SOCKS5 代理访问,适合需要高安全性的场景,但可能因代理或网络延迟较慢。 - HTTPS:配置简单,速度通常优于 SSH,适合大多数开发场景。
- GitHub CLI:结合 SSH 或 HTTPS,提供更高效的命令行工作流,推荐用于频繁操作 GitHub 仓库的用户。
常见问题
问:SSH 连接失败怎么办?
答:检查 ~/.ssh/config
配置是否正确,确认 SOCKS5 代理(127.0.0.1:10808
)是否运行,并运行 ssh -vT git@github.com
查看详细错误日志。
问:如何查看当前的 Git 代理设置?
答:运行 git config --global --get http.proxy
查看 HTTP 代理配置。
问:GitHub CLI 是否需要代理?
答:是的,GitHub CLI 使用 HTTPS 协议,可通过 http.proxy
配置代理。
通过以上步骤,您可以灵活选择 SSH、HTTPS 或 GitHub CLI 访问 GitHub,优化您的开发工作流!