gpt4 book ai didi

Git多账号SSH配置

转载 作者:我是一只小鸟 更新时间:2023-02-16 22:31:15 25 4
gpt4 key购买 nike

【前言】

在企业工作环境中,我们一般会用企业的github或gitlab等账号,同时也会配置相关的ssh访问方式.

当我们想要同时操作个人github或gitlab仓库时,就无法重复使用现有的ssh公钥配置在个人账号里.

一种解决办法是不使用ssh方式,直接使用https方式访问个人仓库是可行的,但我们今天介绍一种方法可以让我们在同一台电脑中配置两个ssh访问.

【配置SSH】

生成新的RSA密钥对

我们无法在github站点不同账户配置中使用同一个RSA公钥,将已经添加过的公钥再次添加到另一个不同账户时,会提示密钥已经被使用过了,这时候我们需要新创建一个密钥对 。

打开cmd输入命令: ssh-keygen -t rsa -C "随意注释字符" -f C:/Users/{username}/.ssh/{keyname} 一路回车,生成新的密钥对 。

其中两个参数,username 为个人电脑账户名 。

keyname 自行给新的密钥对起一个名字,例如我输入 7tiny,那么生成出来的密钥对如下:

将新公钥添加到将要访问的 github 账户

这一步没啥说的,如果不清楚如何配置,参考历史文章 --> Git SSH 认证配置 - 7tiny - 博客园 (cnblogs.com) 。

添加本地配置文件

在 .ssh 目录添加配置文件,文件名 config 注意没有文件扩展名 。

文件内容也非常简单,按如下配置即可 。

                        
                          Host 7tiny
    HostName github.com
    User git
    IdentityFile ~/.ssh/7tiny
                        
                      

文件说明 。

Host:标识,随意取一个即可 。

HostName:仓库站点域名,我使用的是 github,因此域名填 github.com 。

User:默认git即可 。

IdentityFile:填刚才生成时的密钥对地址 。

拉取新账户的仓库源码

我们通过ssh方式直接克隆新仓库的源码 。

克隆时,可以指定采用新的ssh密钥配置此仓库,将 git@github.com 替换为前面配置的 Host 名称(本文用的是7tiny) 。

例如: git clone  7tiny:dotnet/corefx.git 。

当然,不这么指定也是可以成功 clone 的,clone后,打开本地仓库目录下的 .git 文件夹 。

修改 config 配置文件里的 url,将 github.com 换为 Host 名称(本文用的是7tiny),和上述clone时配置效果是一样的 。

【说一点题外话】

经过上述配置,git的正常操作都已经ok了,但是还有点小细节问题.

我们提交代码采用的账号和邮箱用的都是 global 配置里的,这样在提交代码时,个人仓库里的提交记录就会被识别为公司账号的提交,这样首页是不会显示小绿点的,因为不算“自己”的贡献 。

这个处理办法就是将当前代码仓库的姓名和邮箱换成个人账号的姓名和邮箱 。

方法1、通过命令行配置 。

首先进入当前仓库地址打开 git 命令行,通过 git config 命令修改本地姓名邮箱 。

                        
                          git config user.name "xxx name"
git config user.email "aaa@bbb.xx.com"
                        
                      

方法2、打开 config 配置文件直接修改 。

打开本地代码仓库目录下的 .git 文件夹下的 config 配置文件 。

添加 user 节点 。

                        
                          [user]
	name = sevenTiny
	email = xxx@qq.com
                        
                      

保存即可 。

用任意一种方式配置好后,可以通过 git config --local --list 查看当前仓库配置 。

通过 git config --global --list 查看全局配置,以确保全局配置没有被改错(local 和 global 不使用同一个姓名邮箱情况下) 。

后续提交的代码将会用此姓名和邮箱操作仓库,当然,小绿点也是“你”的了 。

最后此篇关于Git多账号SSH配置的文章就讲到这里了,如果你想了解更多关于Git多账号SSH配置的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com