git进阶使用《多账号管理》

git 多账号管理

  • 解决问题:同一台电脑,N 个 github 账号同时存在,需要对应 N 个 github 账号的 SSH key

1、运行 git Bash 客户端,输入如下代码:

shell 复制代码
$ cd ~/.ssh
$ ls

2、创建一个 SSH key

shell 复制代码
$ ssh-keygen -t rsa -C "your_email@example.com" -f your_ras_name

# 代码参数含义:

# -t 指定密钥类型,默认是 rsa ,可以省略
# -C 设置注释文字,比如邮箱
# -f 指定密钥文件存储文件名 ,多个账号必须区分,默认是 id_rsa 会重名

3、添加你的 SSH key 到 github 上面去

shell 复制代码
$ clip < ~/.ssh/id_rsa.pub

4、配置 config 文件

shell 复制代码
# 配置
Host 自定义别名,随意,但会影响git相关命令(建议取账号user.name 或 账号邮箱user.email)
HostName 远程仓库真实域名(github.com或git.oschina.net) 或 ip地址
PreferredAuthentications publickey
IdentityFile 本地私钥id_rsa的路径
User 配置使用用户名,写账号user.name或写git就行
# Port 端口号(默认22)

demo

shell 复制代码
# cky

Host cky
HostName github.com
PreferredAuthentications publickey
IdentityFile C:\Users\User\.ssh\cky
User cky

# Port 端口号(默认 22)

# hzh

Host hzh
HostName github.com
PreferredAuthentications publickey
IdentityFile C:\Users\User\.ssh\id_rsa
User hzh

# Port 端口号(默认 22)
  • 测试连接
shell 复制代码
$ ssh -T git@cky
# You've successfully authenticated, but GitHub does not provide shell access 提示这个表示成功了

6、拉取项目

shell 复制代码
git clone git@github.com:cky/yourblog.git
# 改为(@后面改成你的host名称)
git clone git@cky:cky/yourblog.git
  • 解决老项目 git pull 需要输入密码的问题
shell 复制代码
# 一是直接修改远程仓库的URL
git remote set-url origin git@Host别名:gitrepo

# 二是先remote rm再remote add
git remote rm origin
git remote add origin git@Host别名:gitrepo
相关推荐
xuankuxiaoyao5 分钟前
VUE.JS实践--事件对象和计算属性
javascript·vue.js·ecmascript
前端老石人5 分钟前
表单与交互式元素
前端·css·html
果粒蹬i8 分钟前
自用超半年的免费 OCR 工具分享:告别付费,本地搭建更安心
前端·网络·ocr
朝阳58113 分钟前
M3U8 下载助手油猴脚本 - 完全使用指南
前端·javascript·windows
早點睡39013 分钟前
ReactNative项目OpenHarmony三方库集成实战:react-native-sensors(设备传感器)
javascript·react native·react.js
kadog14 分钟前
GraphX:基于 WebGL 区间算术的 GPU 加速隐函数绘图器
前端·javascript·数学建模·webgl
utmhikari15 分钟前
【DIY小记】解决MacOS上Edge浏览器bilibili全屏卡顿的问题
前端·macos·性能优化·edge·bilibili
上单带刀不带妹15 分钟前
UniApp 页面跳转完全指南:5 种路由方式详解与实战对比
前端·javascript·vue.js·uni-app·跨端开发
大阿明18 分钟前
Node.js npm 安装过程中 EBUSY 错误的分析与解决方案
前端·npm·node.js
Cxiaomu18 分钟前
Web 项目的开发/生产环境请求接口配置治理实战
前端·react.js·typescript