mac/windows git ssh 配置多平台账号(入门篇)

2024-06-04 4130阅读

目录

  • 引子
  • 多账号多平台配置git
    • 一、.ssh文件夹路径
      • 1.1 mac 系统
      • 1.2 windows 系统
      • 二、生成new ssh
        • 2.1 mac系统
        • 2.2 windows 系统
        • 三、配置 config
        • 四、验证
        • 五、用ssh方式拉取远程仓库代码

          引子

          push代码到github仓库时,提示报错。

          Push failed Remote: Support for password authentication was removed on August 13, 2021.

          说 2021 年 8 月 13 号起取消对密码认证的支持,网上搜了一下才知道不支持 https 方式 push 代码了,要换成 ssh 的方式才可以。

          gitee 平台现在还支持。

          基于我同时使用 gitee、github 两个平台,在两个平台上注册了账号,所以就想将 git 远程仓库都配置成 ssh 方式,特此记录一下。

          多账号多平台配置git

          前提是你的电脑已安装 git,如未安装请先安装 git,点击 git 下载

          如果之前设置过全局的 user.name 和 user.email , 需要先删掉,删除命令如下

          # 查看全局配置
          git config --global --list
          # 删除全局配置的用户名
          git config --global --unset user.name
          # 删除全局配置的邮箱
          git config --global --unset user.email
          

          一、.ssh文件夹路径

          找到本机中的 .ssh 文件夹,如果没有,直接新建 .ssh 文件夹

          1.1 mac 系统

          打开访达,菜单中“前往 - 前往文件夹”,输入下面路径,查看是否有 .ssh 文件夹

          按住[ command+shift+. ],显示隐藏的文件;再按一遍,不显示隐藏的文件

          /Users/Macbook/
          

          mac/windows git ssh 配置多平台账号(入门篇) 第1张

          mac/windows git ssh 配置多平台账号(入门篇) 第2张

          mac/windows git ssh 配置多平台账号(入门篇) 第3张

          路径中的 Macbook 为你的电脑用户名。

          1.2 windows 系统

          打开文件资源管理器,输入以下路径,查看是否有 .ssh 文件夹

          C:\Users\Just Liu\
          

          mac/windows git ssh 配置多平台账号(入门篇) 第4张

          路径中的 Just Liu 为你的电脑用户名。

          二、生成new ssh

          这里因为重新配置,所以可以把 .ssh 文件夹里的所有文件全部删掉

          2.1 mac系统

          打开终端app,然后输入 cd ,然后从访达中把 .ssh 文件夹拖入到终端中,回车,如下:

          mac/windows git ssh 配置多平台账号(入门篇) 第5张

          2.2 windows 系统

          打开 .ssh 文件夹,在 .ssh 文件夹中右键选择 Git Bash Here,打开命令行窗口

          mac/windows git ssh 配置多平台账号(入门篇) 第6张

          mac/windows git ssh 配置多平台账号(入门篇) 第7张

          也可以在终端打开,这里我所有命令都在 git 命令窗口进行的


          输入命令

          ssh-keygen -t rsa -C "your_email_adress" -f id_rsa_github2 -C "Github2"
          

          "your_email_adress" 替换成你的邮箱账号, -f id_rsa_github2 文件名,可以自定义,默认为 id_rsa ,-C "Github2" 为描述信息

          mac/windows git ssh 配置多平台账号(入门篇) 第8张

          生成期间会要求输入两次密码,不用输入,直接回车

          此时 .ssh 文件夹会新生成两个文件,id_rsa_github2 (私钥)和 id_rsa_github2.pub (公钥)。用记事本打开 id_rsa_github2.pub 并复制里面的内容,然后打开相对的平台设置

          如github平台:

          1、打开设置项

          mac/windows git ssh 配置多平台账号(入门篇) 第9张

          2、打开SSH and GPG keys

          mac/windows git ssh 配置多平台账号(入门篇) 第10张

          3、点击 new ssh key 按钮

          mac/windows git ssh 配置多平台账号(入门篇) 第11张

          4、在 key 文本框中粘贴复制的 id_rsa_github2.pub 中的内容,title 填入 Github2(描述信息)

          mac/windows git ssh 配置多平台账号(入门篇) 第12张

          5、然后点击 Add SSH key 按钮生成 Authentication Key

          mac/windows git ssh 配置多平台账号(入门篇) 第13张

          然后如法配置你的另一个账号,如:

          # 配置gitee平台
          ssh-keygen -t rsa -C "your_email_adress" -f id_rsa_gitee -C "gitee"
          

          "your_email_adress" 替换成你的邮箱账号, -f id_rsa_gitee 文件名可以自定义,-C "gitee" 为描述信息

          然后同样将后缀为 .pub 的文件用记事本打开复制里面的内容,粘贴到平台的 SSH 公钥中去生成。

          三、配置 config

          完成上面 ssh 公钥后,需要配置 config 文件。打开 .ssh 文件夹查看是否有 config 文件,如果没有直接右键创建一个。

          然后可以复制下面的内容去填写你的 config 配置

          # gitee
          Host gitee
          HostName gitee.com
          user your_email_adress
          PreferredAuthentications publickey
          IdentityFile ~/.ssh/gitee_id_rsa
          # github2
          Host Github2
          HostName github.com
          user your_email_adress
          PreferredAuthentications publickey
          IdentityFile ~/.ssh/id_rsa_github2
          

          根据你生成 new ssh 的命令行内容,去修改对应的 config 信息

          四、验证

          然后输入以下命令,测试连接

          ssh -T git@github.com
          ssh -T git@gitee.com
          

          mac/windows git ssh 配置多平台账号(入门篇) 第14张

          五、用ssh方式拉取远程仓库代码

          在本地用ssh方式拉取远程仓库代码,git clone 仓库ssh地址

          mac/windows git ssh 配置多平台账号(入门篇) 第15张


          注意:不要配置 git 全局的 user.name 和 user.email,只需要在不同的仓库路径文件夹中设置本地的 user.name 和 user.email,如:

          # 切换到本地仓库路径文件夹下并设置 `user.name` 和 `user.email`
          cd 本地仓库路径
          git config user.name
          git config user.email
          

          然后就可以提交代码到远程仓库,且会记录贡献值啦!


          [1]原文阅读

          我是 Just,这里是「设计师工作日常」,求点赞求关注!


    免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理! 图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们,邮箱:ciyunidc@ciyunshuju.com。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!

    目录[+]