first commit
This commit is contained in:
commit
669f49b1d6
342 files changed
+320811
No files matched your search
@@ -0,0 +1,101 @@
|
||||
|
||||
当使用 `git clone` 遇到 `Permission denied` 或一直提示输入密码时,通常是因为本地没有配置 SSH 密钥。请按以下步骤操作:
|
||||
|
||||
## 1. 检查并生成 SSH 密钥
|
||||
|
||||
### 检查现有密钥
|
||||
|
||||
```bash
|
||||
ls -al ~/.ssh
|
||||
```
|
||||
|
||||
查看是否有 `id_ed25519` 或 `id_rsa` 等文件。
|
||||
|
||||
### 生成新密钥
|
||||
|
||||
```bash
|
||||
ssh-keygen -t ed25519 -C "your_email@example.com"
|
||||
```
|
||||
|
||||
**注意:**
|
||||
|
||||
- 执行后全程按回车键即可
|
||||
- 不要随意输入其他字符作为文件名
|
||||
- 如果使用自定义用户目录,路径会是 `/personal/你的用户名/.ssh/id_ed25519`
|
||||
|
||||
## 2. 获取公钥内容
|
||||
|
||||
```bash
|
||||
cat ~/.ssh/id_ed25519.pub
|
||||
```
|
||||
|
||||
**关键步骤:**
|
||||
|
||||
- 打印出以 `ssh-ed25519` 开头的公钥内容
|
||||
- 完整复制整行内容(包括开头和结尾)
|
||||
- 如果路径不同,请使用实际路径
|
||||
|
||||
## 3. 添加公钥到远程 Git 服务器
|
||||
|
||||
### 操作步骤:
|
||||
|
||||
1. 登录公司的 Git 平台(如 GitLab、Gitea 等)
|
||||
2. 进入个人设置 -> **SSH Keys (SSH 公钥)**
|
||||
3. 将第2步复制的整行内容粘贴进去
|
||||
4. 保存设置
|
||||
|
||||
## 4. 启动代理并加载私钥
|
||||
|
||||
```bash
|
||||
eval "$(ssh-agent -s)"
|
||||
ssh-add ~/.ssh/id_ed25519
|
||||
```
|
||||
|
||||
**注意事项:**
|
||||
|
||||
- 如果使用自定义路径,需要指定完整绝对路径
|
||||
- 例如:`/personal/donghongzhi/.ssh/id_ed25519`
|
||||
- 如果遇到代理连接问题,先执行 `eval "$(ssh-agent -s)"`
|
||||
|
||||
## 5. 测试与克隆
|
||||
|
||||
### 测试连接(可选)
|
||||
|
||||
```bash
|
||||
ssh -T git@<公司Git服务器IP>
|
||||
```
|
||||
|
||||
### 正常拉取代码
|
||||
|
||||
```bash
|
||||
git clone git@<公司Git服务器IP>:<项目路径>.git
|
||||
```
|
||||
|
||||
## 常见问题处理
|
||||
|
||||
### 问题1:代理连接失败
|
||||
|
||||
**错误信息:** `Could not open a connection to your authentication agent`
|
||||
|
||||
**解决方案:**
|
||||
|
||||
```bash
|
||||
eval "$(ssh-agent -s)"
|
||||
```
|
||||
|
||||
### 问题2:权限被拒绝
|
||||
|
||||
**错误信息:** `Permission denied (publickey)`
|
||||
|
||||
**排查步骤:**
|
||||
|
||||
1. 确认公钥已正确添加到Git服务器
|
||||
2. 检查私钥是否已加载:`ssh-add -l`
|
||||
3. 验证SSH配置:`ssh -v git@<服务器IP>`
|
||||
|
||||
## 小贴士
|
||||
|
||||
- **换电脑/重装系统时:** 只需重新走一遍这套流程
|
||||
- **密钥管理:** 建议为不同设备生成不同的密钥对
|
||||
- **安全性:** 私钥文件请妥善保管,不要泄露
|
||||
- **路径问题:** 注意检查实际的用户目录路径
|
||||
Reference in new issue
Block a user