mac/windows git 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 , 需要先删掉,删除命令如下

bash 复制代码
# 查看全局配置
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+. ],显示隐藏的文件;再按一遍,不显示隐藏的文件

bash 复制代码
/Users/Macbook/



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

1.2 windows 系统

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

bash 复制代码
C:\Users\Just Liu\

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

二、生成new ssh

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

2.1 mac系统

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

2.2 windows 系统

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

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


输入命令

bash 复制代码
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" 为描述信息

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

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

如github平台:

1、打开设置项

2、打开SSH and GPG keys

3、点击 new ssh key 按钮

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

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

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

bash 复制代码
# 配置gitee平台
ssh-keygen -t rsa -C "your_email_adress" -f id_rsa_gitee -C "gitee"

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

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

三、配置 config

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

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

bash 复制代码
# gitee
Host gitee.com
HostName gitee.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/gitee_id_rsa
# github2
Host github.com
HostName github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa_github2

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

四、验证

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

bash 复制代码
ssh -T git@github.com
ssh -T git@gitee.com

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

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


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

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

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


1\][原文阅读](https://mp.weixin.qq.com/s/WRB2FOYEzxlP8yz8BCQtOQ) 我是 Just,这里是「设计师工作日常」,求点赞求关注!

相关推荐
John_ToDebug16 小时前
隐于无形,触手可及:Chrome 互动滚动条的六个设计密码
chrome·windows·ui
思茂信息17 小时前
CST软件如何进行参数化扫描?
运维·开发语言·javascript·windows·ecmascript·软件工程·软件需求
习惯就好zz18 小时前
Git 交互式 rebase 实战:将后续修改合并到历史提交
git
开发者联盟league19 小时前
在windows上安装和运行rocketmq
windows·rocketmq
非凡ghost21 小时前
可拓浏览器:给手机浏览器装上“外挂“!2W+拓展+AI搜索,玩出无限可能!
windows·智能手机·音视频·firefox
小神.Chen21 小时前
如何删除远程桌面的连接记录,一键清理mstsc远程桌面连接的记录
windows
John_ToDebug21 小时前
WebHostView 与 TabStrip 交互机制深度解析
c++·chrome·windows
L1624761 天前
Win11 共享→Windows Server 访问故障总结(极简可复用)
开发语言·windows·php
love530love1 天前
ComfyUI MediaPipe 终极填坑:解决 incompatible function arguments 报错,基于代理模式的猴子补丁升级版
人工智能·windows·comfyui·mediapipe·猴子补丁·monkey patch·python 3.12
今夕资源网1 天前
Windows Terminal更舒适的命令行环境 仅11MB 支持并行运行WSLLinux子系统 github开源项目
windows·github·命令行·cmd·terminal