0%

如何通过 SSH 的方式向 Github 提交代码

通过 SSH 提交代码到 GitHub,可以提高安全性并避免每次提交时输入用户名和密码。

以下是详细步骤:

1. 检查本地是否有 SSH 密钥

在终端中输入以下命令,检查是否已有 SSH 密钥:

1
ls ~/.ssh

如果看到 id_rsaid_rsa.pub 文件,表示已有密钥;否则需要生成一个新的 SSH 密钥。

2. 生成新的 SSH 密钥

如果没有现有密钥,可以生成新的:

1
ssh-keygen -t rsa -b 4096 -C "你的邮箱@example.com"

按回车接受默认路径,创建密钥时可选择设置密码以增加安全性。

3. 启动 SSH Agent 并添加密钥

启动 SSH Agent 并将密钥添加到它:

1
2
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_rsa

4. 将 SSH 公钥添加到 GitHub

复制公钥到剪贴板:

1
2
3
cat ~/.ssh/id_rsa.pub | pbcopy   # macOS
cat ~/.ssh/id_rsa.pub | clip # Windows
cat ~/.ssh/id_rsa.pub # Linux,手动复制

登录 GitHub,导航到 Settings > SSH and GPG keys,点击 New SSH key,粘贴公钥并保存。

5. 测试 SSH 连接

使用以下命令测试与 GitHub 的 SSH 连接:

1
ssh -T git@github.com

如果连接成功,会看到类似以下消息:

1
Hi <你的用户名>! You've successfully authenticated, but GitHub does not provide shell access.

6. 克隆仓库或更新远程仓库 URL

如果已经克隆了仓库,更新其远程仓库 URL:

1
git remote set-url origin git@github.com:<用户名>/<仓库名>.git

7. 提交和推送代码

按照正常的 Git 工作流,提交并推送代码:

1
2
3
git add .
git commit -m "提交说明"
git push origin main # 或者其他分支名

这时,你应该能够通过 SSH 将代码安全地推送到 GitHub。

Tips

确保你的本地 Git 配置了正确的用户名和邮箱:

1
2
git config --global user.name "你的用户名"
git config --global user.email "你的邮箱@example.com"

这样,你就可以使用 SSH 将代码提交到 GitHub,而无需输入用户名和密码了。