ssh 连接 git

github 上的手册: https://docs.github.com/en/authentication/connecting-to-github-with-ssh

创建 ssh key

# 先检查一下 ~/.ssh 文件夹下是否有 ssh key, 建议使用 ed25519, 默认使用的 rsa 有一些服务器可能不支持
ssh-keygen -t ed25519 -C "your_email@example.com"

添加 ssh key 至 git 服务器

# 复制公钥到剪贴板
cat ~/.ssh/id_ed25519.pub # 显示公钥
cat ~/.ssh/id_ed25519.pub | xclip -sel clip # 复制公钥

# 在 gitea 上,进入用户|设置|ssh 密钥|添加 

# 点验证, 将后台生成的随机字段进行签名,并提交签名结果进行验证

启用 ssh-agent

# 检测 ssh-agent 是否已经运行, 下列的命令是否有结果
ps -ef | grep ssh-agent | grep -v grep #  列进程
echo $SSH_AUTH_SOCK  # 检查环境变量

# 启动 ssh-agent,  
eval "$(ssh-agent -s)"

测试 ssh key

# 检测设置是否正确  -v 显示详细信息 -T 测试连接,不需要交互式 shell
# 我使用的 gitea 所有验证通过后提示没有权限。 有一些会显示一条欢迎信息
ssh -vT your_email@example.com -p port

使用 ssh 源管理 git 仓库

git clone ssh://git@git.x.com:805/x/Avalonia.git
上一篇