GitHub 私有仓库 SSH 访问配置 SOP
适用人群:非技术 / 初级技术人员
目标:可以正常 clone / pull / push 私有仓库
一、这份 SOP 是干什么的?
✅ 解决以下问题:
- 私有仓库 clone 报错
Repository not found - 已添加 SSH Key 但 GitHub 访问失败
- 一台电脑上有 多个 GitHub 身份 / 多把 SSH Key
- 不想影响原来已经能用的 GitHub 配置
✅ 本 SOP 的原则:
不破坏原有配置,新增一个"专用通道"访问指定仓库
二、准备材料(开始前确认)
请确认你已经具备:
-
✅ 一个 GitHub 账号(能在浏览器访问仓库)
-
✅ 仓库地址,例如:
git@github.com:lcy199608/UnityPlayableAdFramework.git -
✅ 已生成 SSH Key(如果没有,按下面步骤来)
三、步骤总览(先看一眼)
- 生成一把新的 SSH Key
- 把 公钥 添加到 GitHub
- 把 私钥 放到正确位置并设置安全权限
- 配置 SSH(不影响原配置)
- 测试 SSH 是否成功
- 使用正确地址 clone 仓库
四、详细步骤(Mac & Windows 分开)
✅ Part A:macOS 操作步骤
Step 1:生成 SSH Key(只做一次)
打开 终端(Terminal),执行:
bash
ssh-keygen -t rsa -C "你的邮箱"
当看到提示:
text
Enter file in which to save the key:
👉 输入:
text
~/.ssh/id_rsa_project
后面问密码时:
- 可以直接 回车(不设密码)
Step 2:确认生成了两个文件
执行:
bash
ls ~/.ssh
你应该能看到:
text
id_rsa_project
id_rsa_project.pub
Step 3:设置私钥权限(非常重要)
bash
chmod 600 ~/.ssh/id_rsa_project
✅ 不做这一步,SSH 会直接拒绝使用这个 key
Step 4:把公钥加到 GitHub
-
打开文件:
bashcat ~/.ssh/id_rsa_project.pub -
复制全部内容
-
打开 GitHub:
- Settings → SSH and GPG keys → New SSH key
-
粘贴 → 保存
Step 5:配置 SSH(新增,不修改旧配置)
编辑配置文件:
bash
nano ~/.ssh/config
在文件末尾追加:
text
Host github-project
HostName github.com
User git
IdentityFile ~/.ssh/id_rsa_project
IdentitiesOnly yes
保存并退出(Ctrl + O → 回车 → Ctrl + X)
Step 6:测试 SSH 是否成功(关键)
bash
ssh -T git@github-project
✅ 正确结果应为:
text
Hi 你的GitHub用户名! You've successfully authenticated
Step 7:clone 仓库(一定要用新地址)
bash
git clone git@github-project:lcy199608/UnityPlayableAdFramework.git
🎉 完成!
✅ Part B:Windows 操作步骤(Git Bash)
⚠️ 请使用 Git Bash,不要用 CMD / PowerShell
Step 1:生成 SSH Key
打开 Git Bash,执行:
bash
ssh-keygen -t rsa -C "你的邮箱"
保存路径输入:
text
/c/Users/你的用户名/.ssh/id_rsa_project
密码直接回车即可。
Step 2:设置私钥权限
bash
chmod 600 ~/.ssh/id_rsa_project
Step 3:添加公钥到 GitHub
bash
cat ~/.ssh/id_rsa_project.pub
复制内容 → GitHub → Settings → SSH keys → New SSH key
Step 4:配置 SSH
bash
notepad ~/.ssh/config
如果文件不存在,直接创建。
粘贴以下内容:
text
Host github-project
HostName github.com
User git
IdentityFile ~/.ssh/id_rsa_project
IdentitiesOnly yes
保存。
Step 5:测试连接
bash
ssh -T git@github-project
看到:
text
Hi xxx! You've successfully authenticated
即成功。
Step 6:clone 仓库
bash
git clone git@github-project:lcy199608/UnityPlayableAdFramework.git
五、常见错误 & 自检表(给非技术人员用)
❌ 报错:Repository not found
✅ 检查:
- 是否用的是
github-project而不是github.com - GitHub 是否能在浏览器打开仓库
❌ 报错:Permission denied (publickey)
✅ 检查:
-
是否执行过:
bashchmod 600 ~/.ssh/id_rsa_project -
公钥是否已添加到 GitHub
✅ 快速自检命令(最重要)
bash
ssh -T git@github-project
只要这条成功,Git 一定能用。
六、一句话总结(给所有人)
SSH 是否能访问 GitHub,取决于:
key 是否安全 + config 是否指定对。
只要测试命令成功,clone 一定成功。