ubuntu之 一台机器如何配置多个git账号

ubuntu之 一台机器如何配置多个git账号

【背景】

作为一个程序员,一定会有一个私人git(gitee),用来存放一些自己的经验积累,而在工作的时候也必然会有自己的工作git。
那么,如果在一台机器上把两个账号都配置上呢?

一、首先获取工作ssh-key

chen@DESKTOP-35RFC6V:~$ cd ~/.ssh/
chen@DESKTOP-35RFC6V:~/.ssh$ ssh-keygen -t rsa -C "aaa@163.com"
Generating public/private rsa key pair.
Enter file in which to save the key (/home/chen/.ssh/id_rsa):

之后,一路回车到底

chen@DESKTOP-35RFC6V:~/.ssh$ ls
config  id_rsa  id_rsa.pub

将id_rsa.pub(公钥)的内容填到对应账号setting下的SSH keys中。

二、接下来获取私人ssh-key

chen@DESKTOP-35RFC6V:~$ cd ~/.ssh/
chen@DESKTOP-35RFC6V:~/.ssh$ ssh-keygen -t rsa -C "bbb@163.com"
Generating public/private rsa key pair.
Enter file in which to save the key (/home/chen/.ssh/id_rsa):id_rsa_own

这次可要看清楚要输入保存的key的名字了,id_rsa_own,当然这个名字是自己起的。只要别叫id_rsa就好。

chen@DESKTOP-35RFC6V:~/.ssh$ ls
config  id_rsa  id_rsa.pub  id_rsa_own  id_rsa_own.pub

同样,将id_rsa_own.pub(公钥)的内容填到对应账号setting下的SSH keys中。

然后还有一步操作,将私钥交给agent管理,因为默认只读取id_rsa,为了让SSH识别新的私钥,需将其添加到SSH agent中:

chen@DESKTOP-35RFC6V:~/.ssh$ ssh-add ~/.ssh/id_rsa_own

如果出现Could not open a connection to your authentication agent的错误,就试着用以下命令:

chen@DESKTOP-35RFC6V:~/.ssh$ ssh-agent bash
chen@DESKTOP-35RFC6V:~/.ssh$ ssh-add ~/.ssh/id_rsa_own

三、配置.ssh/config

chen@DESKTOP-35RFC6V:~/.ssh$ vi config

没有config文件的话,自己创建一个

chen@DESKTOP-35RFC6V:~/.ssh$ cat config
Host gitwork
    HostName  github.com
    User git
    IdentityFile /home/chen/.ssh/id_rsa
Host gitown
    HostName gitee.com
    User git
    IdentityFile /home/chen/.ssh/id_rsa_own

这里要注意了:不要硬复制,这其中每一项是有其涵义的。

比如我的私人git clone的ssh是git@gitee.com:chen/test_own.git
那么我对应到上面config中的配置就是

Host gitown
HostName gitee.com
User git
IdentityFile /home/chen/.ssh/id_rsa_own

当然gitown这个名字是随意取得。当我需要git clone得时候这样执行就好了。

chen@DESKTOP-35RFC6V:~/own$ git clone gitown:chen/test_own.git
chen@DESKTOP-35RFC6V:~/own$ ls
test_own

同理,另一个git也都配置了。

四、配置gitconfig

在git中,我们使用git config 命令用来配置git的配置文件,git配置级别主要有以下3类:
1、仓库级别 local 【优先级最高】
2、用户级别 global【优先级次之】
3、系统级别 system【优先级最低】
所以,按需配置。
比如我的私人库暂时只有一个,那么就不需要配置用户级别,只需要配置仓库级别就完全足够了。

chen@DESKTOP-35RFC6V:~/own/test_own$git config --local user.email "aaa@163.com"
chen@DESKTOP-35RFC6V:~/own/test_own$git config --local user.name "chen"

而我工作的代码库就比较多了,就需要配置用户级别的

chen@DESKTOP-35RFC6V:~$git config --global user.email "workchen@xxx.com"
chen@DESKTOP-35RFC6V:~$git config --global user.name "workchen"

全部完毕。

参考链接:
https://www.cnblogs.com/fireporsche/p/9359130.html
https://blog.csdn.net/hd243608836/article/details/109198988

  • 4
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值