因为公司使用自建的gitlab服务器所以需要配置两个git账户分别用来访问公司仓库和自己的github仓库。

前言:

首先给大家梳理一下多用户名或者说多邮箱使用git的理解误区。我们需要知道的是我们的电脑在于远程代码仓库交互的过程中其实是通过ssh进行连接的,所以最重要的是远程仓库能够允许你现在使用的这台电脑连接到它的服务器。而仓库服务器判断是否允许你连接的凭证是ssh的配置而不是你的git账户。

以github为例,如果你的git.user中的name和email是错误的但是对应的错误的ssh被成功添加到了你的账户setting的ssh中,那么它就会将这个新的用户名和邮箱视为你当前github邮箱账户的别名,除了在git提交记录中不会显示正确的头像外不会有其他影响。

但是有强迫症的我们还是希望提交的代码记录中有自己的头像,点击名字就能跳转到正确的github账户主页的,所以相应的git账户也应该配置正确。对于公司git私服来说如果git账户不是公司邮箱就可能完全没法用了。

此外我们需要了解的是git 项目的全局global和局部local的区别,如果我们要在自己的github项目上加代理就不要给全局加代理了, 否则公司的git项目就没法用了。

下面开始完整的正式教程:

正式教程:

1.取消默认的全局git账户

清空默认的全局 user.name 和 user.email

git config --global --unset user.name
git config --global --unset user.email

2.为不同的 git 账户生成不同的 ssh-key

ssh-keygen -t id_ras_github -C "xxx@xx.com"
ssh-keygen -t id_ras_company -C "xxx@company.com"

位置请放在默认位置,否则你可能会用到苹果电脑mac os打开隐藏文件夹的快捷键是

方法1.通过键盘快捷键显示隐藏文件夹

输入组合快捷键:【command + shift + .】就可以显示出隐藏文件夹了。

再输入一次组合快捷键【command + shift + .】就可以继续隐藏文件夹了。

  1. 将 ssh-key 分别添加到 ssh-agent 信任列表

此处文件路径对应本地实际文件情况

ssh-add ~/.ssh/id_ras_github
ssh-add ~/.ssh/id_ras_company
  1. 添加公钥到自己的 git 账户中

使用命令,copy公钥,到 git 账户网站setting中粘贴即可

pbcopy < ~/.ssh/id_ras_github.pub
pbcopy < ~/.ssh/id_ras_company.pub
  1. 在 config 文件配置多个 ssh-key

在 .ssh/ 目录下,config文件(没有的话新建一个,没有后缀),mac os建议使用vscode来管理文件。

具体项目调整:

现在我们拥有了两个git ssh账户,他们不是global全局账户,当我们在具体的项目下面时,以使用pycharm为例,在项目中打开terminal,我们可以设置本项目的git账户用户名和邮箱,用来制定项目使用的项目远程仓库,另外我们也可以为本项目设置代理,都需要用到local。

设置项目git账户:

git config --local user.name xxxx
git config --local user.email xxxx@xxx.com

查看验证git账户:

git config user.name
git config user.email

设置局部项目代理:

git config --local http.proxy http://127.0.0.1:7890
git config --local https.proxy http://127.0.0.1:7890

文中用到的参考文献:

[1]配置多个git账号,作者:_偏要吃兔兔,链接:https://juejin.cn/post/6999630383130083358

多项目git账户用户名和邮箱设置以及局部github代理的更多相关文章

  1. 设置ubuntu 下git 的用户名和邮箱

    设置ubuntu 下git 的用户名和邮箱 摘自  慢慢修远路,上下求索心http://yanshaozhi.iteye.com/blog/386752 虽然我没看怎么明白 但我用第一总方法就设置好了 ...

  2. 初次安装git配置用户名和邮箱

    初次安装git配置用户名和邮箱 初次安装git需要配置用户名和邮箱,否则git会提示:please tell me who you are. 你需要运行命令来配置你的用户名和邮箱: $ git con ...

  3. git配置用户名跟邮箱

    因为我有两个git账号 所以我现在要改变我的默认用户名跟邮件 我就需要去终端设置用户名跟邮箱 具体的命令行就是 设置git的用户名 git config --global user.name &quo ...

  4. git 配置用户名和邮箱

    在安装了git for windows之后,个人总是忘记配置git config的命令,以此记录一下: 配置用户名和邮箱的命令 git config --global user.name " ...

  5. Git配置用户名与邮箱

    1.用户名和邮箱地址的作用 用户名和邮箱地址是本地git客户端的一个变量 每次commit都会用用户名和邮箱纪录. github的contributions统计就是按邮箱来统计的. 2.查看用户名和邮 ...

  6. git修改用户名和邮箱

    用户名和邮箱地址是本地git客户端的一个变量,不随git库而改变. 每次commit都会用用户名和邮箱纪录. 1.查看用户名和地址 git config user.name git config us ...

  7. 转-git 配置用户名和邮箱

    原址:http://www.cnblogs.com/fsong/p/5540840.html 在安装了git for windows之后,个人总是忘记配置git config的命令,以此记录一下: 配 ...

  8. git修改用户名以及邮箱

    git 修改当前的project的用户名的命令为:git config user.name 你的目标用户名; git 修改当前的project提交邮箱的命令为:git config user.emai ...

  9. 初次安装git配置用户名和邮箱及密钥

    在Windows上安装Git: 在Windows上使用Git,可以从Git官网直接下载安装程序,(网速慢的同学请移步国内镜像),然后按默认选项安装即可. 安装完成后 键盘敲上:windows+r你会看 ...

  10. Git配置用户名、邮箱、密码

    配置用户名:username git config --global user.name username 配置邮箱:user@email git config --global user.email ...

随机推荐

  1. filter() 函数的学习

    1.    filter() 函数 用于过滤序列,过滤掉不符合条件的元素,返回一个迭代器对象,如果要转换为列表,可以使用 list() 来转换.该接收两个参数, 第一个为函数,第二个为序列,序列的每个 ...

  2. [PWN之路]堆攻击那些事儿

    原文:https://www.freebuf.com/articles/endpoint/371095.html 0x00 前言 根据某大佬所说,pwn之路分为栈,堆,和内核.当前,如果你看到这个文章 ...

  3. 集训后的一些wp

    新生赛后 0x01 2048(jk出发) 修改跳转条件为nop,随便动一下直接打印flag.这个场景我幻想过很久了,一直没做到,这次参考wp做出来了知道怎么做了.学到! 0x02 four(dsact ...

  4. [FlareOn4]login-buu ctf

    打开压缩包 是个html,我直接???? 这不是web弄的吗 离谱了,不过f12还是会的 不过其中的逻辑还是比较清楚的 先用伪代码确定加密逻辑,再直接写直接进行爆破解码 wo cao,wrong!fl ...

  5. Spring Boot通过企业邮箱发邮件被Gmail退回的问题解决方法

    这两天给我们开发的Chrome插件:Youtube中文配音增加了账户注册和登录功能,其中有一步是邮箱验证,所以这边会在Spring Boot后台给用户的邮箱发个验证信息.如果发邮件,之前的文章教程里就 ...

  6. iOS视图控件的内容显示和离屏渲染流程

    iOS中UI控件内容显示流程 UIKit界面组成 iOS中组成页面的各个元素基本来自UIKit,我们可以修改布局或自定义绘制来修改UIKit元素的默认展示. UIView的页面显示内容有CALayer ...

  7. JAVA语言基础day01

    笔记: Java开发环境: java编译运行过程: 编译期:.java源文件,经过编译,生成.class字节码文件 运行期:JVM加载.class并运行.class(0和1) 特点:跨平台,一次编译到 ...

  8. 给你的模糊测试开开窍——定向灰盒模糊测试(Directed Greybox Fuzzing)综述

    ​ 本文系原创,转载请说明出处 Please Subscribe Wechat Official Account:信安科研人,获取更多的原创安全资讯 原论文:<The Progress, Cha ...

  9. MIMO雷达中波形复用/分离的方法------TDMA\FDMA\DDMA\CDMA

    最先接触到MIMO雷达的波形复用/分离的方法还是工作中负责的TI1843项目中了解的,主要还是时分多址波形(TDMA),当时刚接触时对这些很疑惑,再加上后面看到了频分多址波形(FDMA).码分多址波形 ...

  10. 电气工程师必学------CODESYS v3.5 入门学习笔记(一)

    一.新建工程 打开软件新建工程,如图 此教程只是入门练习,所以这里一般情况下都是创建的Standard project,也就是标准工程.窗口下方可以设置工程名称与存放位置. 紧接着是选择设备与编译语言 ...