自动摘要
正在生成中……
当本地有多个github项目时,如果只使用同一个deploy key,github会报密钥已使用,不允许添加。这时需要部署多个密钥,为每一个项目使用不同的密钥。
1. 本地生成密钥:
ssh-keygen -t ed25519 -C "dev@example.com"
以执行后默认生成的公钥和私钥为例 id_ed25519
和 id_ed25519.pub
,密钥文件位于 ~/.ssh/
下。
2. 编辑 ~/.ssh/config
,如果没有请新建,添加以下内容。
Host github.com-repo1
Hostname github.com
IdentityFile=~/.ssh/id_ed25519
3. 将公钥添加到github项目的deploy keys , 打开github的项目密钥设置页,一般是: https://github.com/你的用户名/项目名/settings/keys ,复制前面id_ed25519
的文件内容到文本框并保存。
4. 修改repo的remote url,如果你之前的项目地址为 git@github.com:falconchen/hello.git ,在部署密钥后需要改成git@github.com-repo1:falconchen/hello.git ,github.com-repo1 对应 第2步 的Host
。
git remote set-url origin git@github.com-repo1:falconchen/hello.git
参考资料:
- https://docs.github.com/en/authentication/connecting-to-github-with-ssh/managing-deploy-keys#deploy-keys