项目上传及 SSH 配置指南

项目上传及 SSH 配置指南

本文档介绍如何将本地项目上传到 GitHub,使用 SSH 方式安全连接,并完成代码推送的完整流程。


1. 生成 SSH 密钥对

ssh-keygen -t ed25519 -C "[email protected]"

按提示完成密钥生成,默认保存在 ~/.ssh/id_ed25519id_ed25519.pub


2. 启动 ssh-agent 并添加私钥

PowerShell

Start-Service ssh-agent      # 启动 ssh-agent 服务(Windows)
ssh-add $env:USERPROFILE\.ssh\id_ed25519

Git Bash

eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_ed25519

3. 将公钥添加到 GitHub

  1. 复制公钥内容:
    cat ~/.ssh/id_ed25519.pub
  2. 登录 GitHub,进入 Settings > SSH and GPG keys
  3. 点击 New SSH key,填写标题,粘贴公钥内容,保存。

4. 测试 SSH 连接

ssh -T [email protected]

成功时显示:

Hi username! You've successfully authenticated, but GitHub does not provide shell access.

5. 初始化本地 Git 仓库(如未初始化)

git init

6. 关联远程仓库(使用 SSH 地址)

git remote add origin [email protected]:yourusername/yourrepo.git

或者修改已有远程地址:

git remote set-url origin [email protected]:yourusername/yourrepo.git

7. 拉取远程代码并合并(避免冲突)

git pull origin main --allow-unrelated-histories

8. 添加、提交并推送代码

git add .
git commit -m "首次提交"
git push -u origin main

9. 常用 Git 命令

  • 查看状态:
    git status
  • 创建分支:
    git checkout -b feature-branch
  • 合并分支:
    git checkout main
    git merge feature-branch
  • 查看提交日志:
    git log --oneline --graph --all

10. 注意事项

  • 确保本地时间准确,避免 SSH 认证失败。
  • 多账号用户建议配置 ~/.ssh/config 管理不同密钥。
  • 遇到推送被拒绝,先拉取远程最新代码合并后再推送。

感谢阅读!如有疑问,请联系维护者或参考 GitHub 官方文档