当前位置: 首页 > news >正文

网站建设与维护教程轻饮食网络推广方案

网站建设与维护教程,轻饮食网络推广方案,微网站功能列表,鞍山网站制作招聘网文章目录 使用多个 GitHub 账号的 SSH 配置与常见问题排查摘要目录1. 使用多个 GitHub 账号的场景介绍2. 配置多个 SSH 密钥2.1 生成多个 SSH 密钥2.2 添加 SSH 密钥到 SSH 代理2.3 将 SSH 公钥添加到 GitHub 账户 3. 配置 SSH 代理与 GitHub 账户的关联3.1 为不同仓库设置不同…

文章目录

      • 使用多个 GitHub 账号的 SSH 配置与常见问题排查
        • 摘要
        • 目录
        • 1. 使用多个 GitHub 账号的场景介绍
        • 2. 配置多个 SSH 密钥
          • 2.1 生成多个 SSH 密钥
          • 2.2 添加 SSH 密钥到 SSH 代理
          • 2.3 将 SSH 公钥添加到 GitHub 账户
        • 3. 配置 SSH 代理与 GitHub 账户的关联
          • 3.1 为不同仓库设置不同的 GitHub 账号
        • 4. SSH 连接 GitHub 时常见错误排查
          • 4.1 问题 1:`Connection closed by 198.18.0.35 port 22`
          • 4.2 问题 2:`Permission denied (publickey)`
          • 4.3 问题 3:`Host key verification failed`
        • 5. 总结

使用多个 GitHub 账号的 SSH 配置与常见问题排查

摘要

在开发过程中,可能会涉及到多个 GitHub 账号的使用。为了避免每次切换账号时手动输入用户名和密码,我们可以通过配置多个 SSH 密钥来管理这些账号。本文将详细介绍如何为每个 GitHub 账号生成独立的 SSH 密钥、如何配置 SSH 代理、以及在使用 SSH 连接克隆仓库时遇到的常见错误及其解决方案。


目录
  1. 使用多个 GitHub 账号的场景介绍
  2. 配置多个 SSH 密钥
  3. 配置 SSH 代理与 GitHub 账户的关联
  4. SSH 连接 GitHub 时常见错误排查
  5. 总结

1. 使用多个 GitHub 账号的场景介绍

在日常开发中,可能有以下场景需要使用多个 GitHub 账号:

  • 工作与个人项目分离:你可能有一个工作账号用于公司项目管理,还有一个个人账号用于自己的开源项目或其他私有项目管理。
  • 多重身份管理:不同的组织或团队可能要求你使用不同的 GitHub 账号来管理项目。

为了简化这些场景中的账户切换和管理,我们可以通过 SSH 配置,让每个仓库使用特定的 GitHub 账号而无需反复输入密码或切换登录状态。


2. 配置多个 SSH 密钥
2.1 生成多个 SSH 密钥

每个 GitHub 账号需要一个独立的 SSH 密钥。通过 ssh-keygen 命令为每个账号生成密钥,并指定不同的文件名。

为第一个 GitHub 账号生成密钥:

ssh-keygen -t rsa -b 4096 -C "your-email-for-account1@example.com"

命令执行后,它会提示你输入文件名,保存路径可以为:

/home/your-username/.ssh/id_rsa_account1

同样,为第二个账号生成另一个密钥:

ssh-keygen -t rsa -b 4096 -C "your-email-for-account2@example.com"

保存路径可以为:

/home/your-username/.ssh/id_rsa_account2
2.2 添加 SSH 密钥到 SSH 代理

接下来,需要启动 SSH 代理并将生成的密钥添加到代理中。

启动 SSH 代理:

eval "$(ssh-agent -s)"

然后将每个密钥添加到代理中:

ssh-add ~/.ssh/id_rsa_account1
ssh-add ~/.ssh/id_rsa_account2
2.3 将 SSH 公钥添加到 GitHub 账户

在 GitHub 网站上,将每个公钥分别添加到对应的 GitHub 账户中。

  1. 打开终端并查看公钥内容:
cat ~/.ssh/id_rsa_account1.pub
  1. 将显示的内容复制,然后登录到第一个 GitHub 账号:

    • 进入 Settings -> SSH and GPG keys
    • 点击 New SSH key,粘贴公钥并保存。
  2. 对第二个账号执行相同的操作,将 ~/.ssh/id_rsa_account2.pub 添加到 GitHub。


3. 配置 SSH 代理与 GitHub 账户的关联

为了让 Git 在克隆和操作时能够正确选择相应的 SSH 密钥,我们需要通过 SSH 配置文件(~/.ssh/config)来为每个 GitHub 账号设置特定的 Host

编辑 ~/.ssh/config 文件,添加以下内容:

# Account 1
Host github-account1HostName github.comUser gitIdentityFile ~/.ssh/id_rsa_account1# Account 2
Host github-account2HostName github.comUser gitIdentityFile ~/.ssh/id_rsa_account2

这样,Git 在访问 github-account1github-account2 时,会使用相应的密钥进行身份验证。

3.1 为不同仓库设置不同的 GitHub 账号

在克隆仓库时,指定相应的 Host 名称。例如,克隆第一个账户下的仓库时:

git clone git@github-account1:username/repo.git

对于第二个账户:

git clone git@github-account2:username/repo.git

通过这种方式,你可以轻松管理多个 GitHub 账号,避免反复输入用户名和密码。


【注意⚠️】:

  • 上述使用的是:git@github-account1 和 git@github-account2。而不是 github.com;
  • 不能使用 github.com,要使用在 config 文件中 Host xxx.com 后面的 xxx.com进行拉取文件。

所以我在config文件中,把账户1设置为 github.com,账户2设置为 github_account2.com

这样账户1在clone仓库时,可以直接clone。
账户2需要把url修改为git@github-account2才能clone文件。

下述是我配置的config文件:

# Account 1
Host github.comHostName ssh.github.comUser gitIdentityFile ~/.ssh/id_rsaPort 443# Account 2
Host github_account2.comHostName ssh.github.comUser gitIdentityFile ~/.ssh/daiyuPort 443
4. SSH 连接 GitHub 时常见错误排查
4.1 问题 1:Connection closed by 198.18.0.35 port 22

当尝试通过 SSH 克隆仓库时,可能会遇到类似如下的错误信息:

Connection closed by 198.18.0.35 port 22
fatal: Could not read from remote repository.

原因分析:这个问题通常与网络配置或 SSH 配置不当有关。可能是由于网络环境阻止了端口 22 的 SSH 连接,或者密钥文件没有正确配置。

解决方法

  • 使用端口 443 进行 SSH 连接:在某些受限的网络环境中,端口 22 可能被防火墙阻止。GitHub 提供了备用的 ssh.github.com,可以通过端口 443 连接。

编辑 ~/.ssh/config,将 HostName 修改为 ssh.github.com 并指定使用端口 443:

Host github.comHostName ssh.github.comUser gitIdentityFile ~/.ssh/id_rsaPort 443

保存后再尝试克隆:

git clone git@github.com:username/repo.git
  • 检查 SSH 代理:确保 SSH 代理已正确启动,并且密钥已经加载:
ssh-add -l

如果没有密钥,执行:

ssh-add ~/.ssh/id_rsa
  • 确认 GitHub 中是否添加了正确的公钥:确保你已经将正确的 SSH 公钥添加到 GitHub。
4.2 问题 2:Permission denied (publickey)

如果遇到 Permission denied (publickey) 错误,说明 SSH 密钥未被正确识别。这可能是由于密钥未添加到 SSH 代理,或是密钥没有添加到 GitHub 账户。

解决方法

  • 使用 ssh-add ~/.ssh/id_rsa 添加私钥。
  • 检查是否正确添加了公钥到 GitHub 账户。
4.3 问题 3:Host key verification failed

Host key verification failed 错误出现时,可能是 GitHub 的主机密钥发生了变更。

解决方法

使用以下命令清除缓存的 GitHub 主机密钥:

ssh-keygen -R github.com

然后重新尝试连接:

ssh -T git@github.com

5. 总结

通过正确配置 SSH,可以在同一台电脑上同时使用多个 GitHub 账号,无需反复切换或输入密码。关键在于为每个账号生成独立的 SSH 密钥,并通过 ~/.ssh/config 配置文件进行管理。此外,克隆仓库时遇到的常见连接问题大多可以通过修改 SSH 配置或使用备用端口(443)来解决。希望本文能帮助你更好地管理多个 GitHub 账号,并轻松解决 SSH 连接中的问题。

http://www.dinnco.com/news/39318.html

相关文章:

  • 美工做图片网站网络营销推广的方式有哪些
  • 采购网站模板秦皇岛百度推广
  • 宣传网站模板友情连接
  • 景区建设网站的不足产品品牌推广策划方案
  • 我想做个网站推广怎么做it培训班真的有用吗
  • 网页制作3个网页的网站图片淘宝推广平台
  • 常州网站制作案例网站排名优化软件
  • 泗洪做网站公司站长工具搜索
  • 西宁手机网站建设seo秘籍优化课程
  • 西宁网站建设嘉荐君博l线上营销的优势
  • 网站翻页动画效果小说搜索风云榜
  • 海南新闻在线新闻中心域名seo查询
  • 政府网站建设方案seo分析seo诊断
  • 做的好看的国内网站欣赏seo优化网站查询
  • 网站设计就业前景微信推广文案
  • 网站主题咋做网站推广去哪家比较好
  • 做vi设计的国外网站网站优化seo培训
  • 广州哪家公司做网站谷歌商店下载
  • c h5网站开发短视频推广引流方案
  • 商场商城网站建设方案推广之家官网
  • 做一个b2c网站怎样做seo搜索引擎优化实战
  • 辽宁奔之流建设工程有限公司网站网络营销的四大特点
  • 锦州网站制作公司建站平台有哪些
  • 易经网站开发公司51外链代发网
  • 定制微信小程序多少钱四川seo排名
  • 网站开发教程 视频教程提高工作效率的软件
  • 央企网站建设意义seo搜索引擎优化岗位要求
  • 建设网站的价值百度首页排名代发
  • 公司的网站建设注意点廊坊seo管理
  • 合肥网站开发网络公司seo专业培训技术