使用 SSH 配置 Git 和 Sourcetree 的详细技术文档
这份文档将指导你如何生成 SSH 密钥,配置 Git 和 Sourcetree 使用 SSH 进行身份验证,并推送代码到 GitHub。
目录
- 生成 SSH 密钥
- 添加 SSH 密钥到 GitHub
- 配置 Sourcetree 使用 SSH
- 推送代码到 GitHub
- 验证推送结果
1. 生成 SSH 密钥
步骤 1: 打开终端或 Git Bash,输入以下命令生成新的 SSH 密钥:
ssh-keygen -t ed25519 -C "your_email@example.com"
步骤 2: 当提示输入保存文件路径时,直接按回车键使用默认路径:
Enter file in which to save the key (/c/Users/YourUsername/.ssh/id_ed25519):
你也可以指定一个自定义路径:
Enter file in which to save the key (/c/Users/YourUsername/.ssh/id_ed25519): /path/to/your_custom_key
步骤 3: 设置一个密码短语(可以为空,但不建议):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
步骤 4: 启动 ssh-agent
并添加私钥:
eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_ed25519
如果你使用了自定义路径,请替换路径:
ssh-add /path/to/your_custom_key
2. 添加 SSH 密钥到 GitHub
步骤 1: 复制公钥内容到剪贴板:
cat ~/.ssh/id_ed25519.pub
如果你使用了自定义路径,请替换路径:
cat /path/to/your_custom_key.pub
步骤 2: 登录到 GitHub,进入 Settings
→ SSH and GPG keys
。
步骤 3: 点击 New SSH key
,将公钥粘贴进去,添加一个描述(例如:My Laptop
),然后点击 Add SSH key
。
3. 配置 Sourcetree 使用 SSH
步骤 1: 打开 Sourcetree,点击菜单栏的 Tools
→ Options
。
步骤 2: 在 General
标签页中,找到 SSH Client Configuration
部分,确保选择了正确的 SSH 客户端路径(通常是默认的 OpenSSH)。
步骤 3: 在 Tools
菜单中选择 Create or Import SSH Keys
,导入你生成的私钥文件。如果你的密钥文件不在默认路径下,请指定路径:
C:\Users\YourUsername\.ssh\id_ed25519
步骤 4: 确认远程仓库 URL 使用的是 SSH 格式:
git@github.com:YourUsername/your-repository.git
步骤 5: 打开 Sourcetree,选择你的仓库。
步骤 6: 点击 Settings
,在 Remotes
选项卡中编辑远程仓库 URL 为 SSH 格式:
git@github.com:YourUsername/your-repository.git
4. 推送代码到 GitHub
步骤 1: 打开 Sourcetree,选择你的仓库。
步骤 2: 点击 Push
按钮。
步骤 3: 在弹出的窗口中,选择要推送的分支(例如 main
),并确认远程仓库 URL 为 git@github.com:YourUsername/your-repository.git
。
步骤 4: 点击 OK
按钮进行推送。
5. 验证推送结果
步骤 1: 在命令行中检查推送状态:
git status
步骤 2: 查看提交历史,确认最新提交已推送到远程仓库:
git log
步骤 3: 可以尝试通过 SSH 连接到 GitHub,确认 SSH 配置是否正确:
ssh -T git@github.com
你应该会看到类似以下的消息:
Hi <username>! You've successfully authenticated, but GitHub does not provide shell access.
如果你完成了以上所有步骤,你已经成功地通过 SSH 配置了 Git 和 Sourcetree,并可以无缝地推送代码到 GitHub。如果在执行过程中遇到任何问题,请参考相应的错误信息进行调整,或者联系我们寻求进一步的帮助。