一台电脑上使用同一代码托管平台的多个 Git 账户
预先生成两个密钥,并分别设置到 GitHub 平台的不同账号中。
# 生成第一个密钥对(GitHub账号A)
ssh-keygen -t ed25519 -C "your_email_for_account_A@example.com"
# 生成第二个密钥对(GitHub账号B)
ssh-keygen -t ed25519 -C "your_email_for_account_B@example.com"
为GitHub账号A设置SSH配置和用户信息:
git config user.name "Your Name for Account A"
git config user.email "your_email_for_account_A@example.com"
git config core.sshCommand "ssh -i ~/.ssh/ed25519_A"
为GitHub账号B设置SSH配置和用户信息:
git config user.name "Your Name for Account B"
git config user.email "your_email_for_account_B@example.com"
git config core.sshCommand "ssh -i ~/.ssh/ed25519_B"
在这里,我们使用core.sshCommand
配置来指定使用不同的SSH密钥文件。这将确保Git在进行操作时使用正确的SSH密钥。
如果您要在特定仓库内使用不同的设置,可以进入该仓库并重复上述步骤,将配置设置为特定于该仓库的配置。这将覆盖全局设置。
cd /path/to/your/repo
git config user.name "Your Name for Account A"
git config user.email "your_email_for_account_A@example.com"
git config core.sshCommand "ssh -i ~/.ssh/ed25519_A"
现在,您已经为GitHub账号A和B设置了特定的SSH配置和用户信息,Git应该能够在不同的仓库中使用正确的配置。如果Git仍然使用默认设置,请确保已正确配置SSH密钥文件路径和使用core.sshCommand
来明确指定使用哪个SSH密钥。
扩展