git中https和SSH的clone方式详细介绍 以及多个github账号的SSH冲突解决 以及SSH端口被防火墙屏蔽问题解决 通过HTTPS克隆私有项目问题

学习目标:

掌握Git的知识


学习内容:

1.HTTPS和SSH方式的区别 2.完整配置SSH秘钥和公钥的步骤 3.多个github账号的SSH冲突解决 4.SSH端口被防火墙屏蔽问题解决 5.通过HTTPS或者SSH克隆私有项目

学习时间:

2022.2.10

学习产出:

1.HTTPS和SSH方式的区别

在git中clone项目有两种方式:HTTPS和SSH,它们的区别如下:

HTTPS:不管是谁,拿到url随便clone,但是在push的时候需要验证用户名和密码;
SSH:clone的项目你必须是拥有者或者管理员,而且需要在clone前添加SSH Key。
SSH 在push的时候,是不需要输入用户名的,如果配置SSH key的时候设置了密码,则需要输入密码的,否则直接是不需要输入密码的。

在git中使用SSH Key的步骤: 检查电脑是否存在SSH Key:$ cd ~/.ssh$ ls 如果存在id_rsa.pub 或
id_dsa.pub 文件,说明文件以及存在,跳过创建SSH Key步骤。 创建SSH Key 将公共的SSH 放到远程仓库上

2.完整配置SSH秘钥和公钥的步骤

请看我该专栏的另外一篇文章

3.多个github账号的SSH冲突解决

github使用SSH与客户端连接。如果是单用户(first),生成密钥对后,将公钥保存至github,
每次连接时SSH客户端发送本地私钥(默认~/.ssh/id_rsa)到服务端验证。
单用户情况下,连接的服务器上保存的公钥和发送的私钥自然是配对的。

但是如果是多用户(first,second),我们在连接到second的帐号时,
second保存的是自己的公钥,但是SSH客户端依然发送默认私钥,即first的私钥, 那么这个验证自然无法通过。
不过,要实现多帐号下的SSH key切换在客户端做一些配置即可。

首先cd到~/.ssh 使用 ssh-keygen -t -rsa -C ‘second@mail.com’ 生成新的SSH key:id_rsa_second,生成完后将新的SSH public key添加到github。

ssh
  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
回答: 要使用SSH协议进行git clone,首先需要在本地生成SSH key,并将公钥添加到GitHub账户。可以使用以下命令生成新的SSH key:ssh-keygen -t rsa -C 'second@mail.com' [1。生成完毕后,将公钥添加到GitHub。 接下来,在~/.ssh目录下创建config文件,用于配置私钥对应的服务器。文件内容如下: ```Shell Default github user(first@mail.com) Host github.com HostName github.com User git IdentityFile C:/Users/username/.ssh/id_rsa #second user(second@mail.com) Host github-second HostName github.com User git IdentityFile C:/Users/username/.ssh/id_rsa_second ``` 。 这样,你就可以使用git clone命令进行SSH克隆了。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [githttpsSSHclone方式详细介绍 以及多个github账号SSH冲突解决 以及SSH端口防火墙屏蔽问题解决 ...](https://blog.csdn.net/m0_48781656/article/details/122854653)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *3* [git clone使用ssh报错: No supported authentication methods available(server sent: publickey) 的解决...](https://blog.csdn.net/weixin_46256404/article/details/127865605)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值