前言
你最近换电脑了吗?还记得如何在本地配置多个 git ssh 连接吗?一般公司用的是自己内网部署的 gitlab 服务器进行代码管理,开发者使用的是公司的用户名和公司的邮箱,而在个人的开源项目中,我们的代码托管于 github,这个时候就需要两个或多个以上的 SSH-Key 去进行登录,方便代码的拉取与推送。
文章大纲
- 查看所有 ssh key
- 分别配置 gitlab 内网 和 github 外网 ssh
- 进行测试
第一步:查看所有 SSH-Key
打开 bash/zsh 终端:执行以下命令
$ cd ~/.ssh/ $ ls
输出如下:
KaydeMBP:~ kayliang$ cd ~/.ssh/
KaydeMBP:.ssh kayliang$ ls
config github_id-rsa.pub gitlabnei_id-rsa.pub
github_id-rsa gitlabnei_id-rsa known_hosts
第二步:生成一个 ssh-key,用于配置公司的 GitLab
在~/.ssh/目录会生成gitlab_id-rsa和gitlab_id-rsa.pub私钥和公钥。
$ ssh-keygen -t rsa -C "xxx@xxx.com" -f ~/.ssh/gitlabnei_id-rsa
查看你的 public key,我们将gitlabnei_id-rsa.pub中的内容粘帖到公司GitLab服务器的SSH-key的配置中。
# 把文件内容打印到命令行工具上,方便复制 cat ~/.ssh/gitlab_id-rsa.pub
格式如下所示,记得把整个文本包括 ssh-rsa 也复制到剪切板上。
ssh - rsa; xxxxxxxxx; xxxxx;
然后粘贴到网站的 ssh 配置中:
第三步:Github 生成一个 SSH-Key
在~/.ssh/目录会生成github_id-rsa和github_id-rsa.pub私钥和公钥。我们将github_id-rsa.pub中的内容粘帖到github服务器的SSH-key的配置中。
ssh-keygen -t rsa -C "xxxx@xxxx.com" -f ~/.ssh/github_id-rsa
第四步:在 ~/.ssh 目录下添加config配置文件用于区分多个 SSH-Key
1. 添加识别 SSH keys 新的私钥
默认只读取 id_rsa,为了让 SSH 识别新的私钥,需要将新的私钥加入到 SSH agent 中
# 查看已经添加的私钥 ssh-add -l 3072 SHA256:xxxxxxxxxx linjy@xxxx.com.cn (RSA)
$ ssh-agent bash $ ssh-add ~/.ssh/github_id_rsa $ ssh-add ~/.ssh/gitlabnei_id_rsa
这一步很重要,否则你在后面进行 git clone 拉取 ssh 地址的仓库会出现错误。
KaydeMBP:chengdu-project kayliang$ git clone ssh://git@xxxxxxx.amazonaws.com.cn:5337/xdata/SH2019GH109/chengdu-natural-resources-cli3.git
Cloning into 'chengdu-natural-resources-cli3'...
no such identity: gitlabnei_id-rsa: No such file or directory
git@xxxxxxx.amazonaws.com.cn: Permission denied (publickey).
fatal: Could not read from remote repository.Please make sure you have the correct access rights
and the repository exists.
2. 添加 config 配置文件
vi ~/.ssh/config
设置文件内容如下,这里要注意的是:配置的信息必须跟你在仓库界面的 ssh 的地址一致,因为有时候 http 地址跟 ssh 地址的端口是不一样的。
地址:ssh://git@xxxxx.amazonaws.com.cn:5337/xdata/SH2019GH109/xxxxx.git
根据上面的地址可以进行配置如下:
# gitlab Host xxxxx.amazonaws.com.cn # 这里是 ssh 地址的 ip PreferredAuthentications publickey IdentityFile ~/.ssh/gitlabnei_id-rsa Port 5337 # 这里是 ssh 地址的端口 # github Host github.com HostName github.com PreferredAuthentications publickey IdentityFile ~/.ssh/github_id-rsa # 更多配置 ...
配置文件参数:
- Host:可以看作是一个你要识别的模式,对识别的模式,进行配置对应的主机名和 ssh 文件。
- HostName: 要登录主机的主机名。
- User: 登录名。
- IdentityFile: 指明上面 User 对应的 identityFile 路径。
- Port: ssh 端口
第五步:测试
测试 github 外网 ssh 地址
ssh -T git@github.com
输出:
Hi Jecyu! You've successfully authenticated, but GitHub does not provide shell access.
测试公司内网 ssh 地址
ssh -T git@xxxx.amazonaws.com.cn Welcome to GitLab, @linjy!
就表示成功的连接公司的 gitlab。
最后
使用 git clone 分别获取你的 github 个人项目,以及获取 gitlab 的公司内网项目:
git clone ssh://xxxx.amazonaws.com.cn:5337/xdata/SH2020GH036/xxxx.git cd my-project touch README.md git add README.md git commit -m "add README" git push -u origin master
因为个人项目和公司项目的账户和邮箱都不一样,记得在各自的仓库下进行配置,这样提交时的 commit 记录的用户和邮箱都是正确的,当然这一步对你是否能用 ssh 提交和获取不影响的,只是为了看 commit 记录的时候更清晰。
git config user.name xxxx git config user.email xxxx@xxx.com
小结
本文是笔者在实践中的记录,也参考了一些网上优秀的作者经验,如有错误请指出。
参考资料
更进一步阅读,了解 SSH 知识:https://segmentfault.com/q/1010000000835302 和 《SSH,The Secure Shell》 书本。
git 手册
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线
暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。
艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。
《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。
更新日志
- 中国武警男声合唱团《辉煌之声1天路》[DTS-WAV分轨]
- 紫薇《旧曲新韵》[320K/MP3][175.29MB]
- 紫薇《旧曲新韵》[FLAC/分轨][550.18MB]
- 周深《反深代词》[先听版][320K/MP3][72.71MB]
- 李佳薇.2024-会发光的【黑籁音乐】【FLAC分轨】
- 后弦.2012-很有爱【天浩盛世】【WAV+CUE】
- 林俊吉.2012-将你惜命命【美华】【WAV+CUE】
- 晓雅《分享》DTS-WAV
- 黑鸭子2008-飞歌[首版][WAV+CUE]
- 黄乙玲1989-水泼落地难收回[日本天龙版][WAV+CUE]
- 周深《反深代词》[先听版][FLAC/分轨][310.97MB]
- 姜育恒1984《什么时候·串起又散落》台湾复刻版[WAV+CUE][1G]
- 那英《如今》引进版[WAV+CUE][1G]
- 蔡幸娟.1991-真的让我爱你吗【飞碟】【WAV+CUE】
- 群星.2024-好团圆电视剧原声带【TME】【FLAC分轨】