美文网首页
Ubuntu系统git多账号配置

Ubuntu系统git多账号配置

作者: lostsearover | 来源:发表于2017-08-18 16:05 被阅读0次

1. 如何生成ssh公钥(摘录自git.oschina.net)

你可以按如下命令来生成 sshkey:

# xxxxx@xxxxx.com是邮箱号
ssh-keygen -t rsa -C "xxxxx@xxxxx.com"  

# Generating public/private rsa key pair...
# 三次回车即可生成 ssh key

查看你的 public key,并把他添加到码云(Gitee.com) SSH key添加地址

cat ~/.ssh/id_rsa.pub
# ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC6eNtGpNGwstc....

添加后,在终端(Terminal)中输入

ssh -T git@git.oschina.net

若返回

Welcome to Git@OSC, yourname!

则证明添加成功。

2. 配置多账号以及多地址

举个例子,我又在git.oschina.net上面新建了一个账号yyyyy@yyyyy.com,然后还在github.com上面新建了一个zzzzz@zzzzz.com账号

2.1 按照第一步生成private和public key

同样把public key上传到git.oschina.net或者github.com的对应位置,如下

~/.ssh/id_rsa_yyyyy
~/.ssh/id_rsa_yyyyy.pub

~/.ssh/id_rsa_zzzzz
~/.ssh/id_rsa_zzzzz.pub
2.2 配置~/.ssh/config文件
#xxxxx
Host git.oschina.net
    HostName git.oschina.net
    User xxxxx
    IdentityFile /home/user/.ssh/id_rsa

#yyyyy
Host git.oschina.net-yyyyy #这里不同
    HostName git.oschina.net #这里一样
    User yyyyy
    IdentityFile /home/user/.ssh/id_rsa_yyyyy #这里不同
    
#zzzzz
Host github.com #这里不同
    HostName github.com #这里一样
    User zzz
    IdentityFile /home/user/.ssh/id_rsa_zzzzz #这里不同    

验证配置是否生效

ssh -T git@git.oschina.net
ssh -T git@git.oschina.net-yyyyy
ssh -T git@github.com

注意:ssh -T git@github.com 如果提示Hi zzzzz! You've successfully authenticated, but GitHub does not provide shell access.说明已经成功

3. 多账号之间切换

git config --global user.name "xxxxx" 
git config --global user.email "xxxxx@xxxxx.com" 

或者

git config --global user.name "yyyyy" 
git config --global user.email "yyyyy@yyyyy.com" 

或者

git config --global user.name "zzzzz" 
git config --global user.email "zzzzz@zzzzz.com" 

访问远程库的不同
通过xxxxx@xxxxx.com访问远程项目

git clone git@git.oschina.net:xxxxx/demo.git

通过yyyyy@yyyyy.com访问远程项目

git clone git@git.oschina.net-yyyyy:yyyyy/demo.git

通过zzzzz@zzzzz.com访问远程项目

git clone git@github.com:zzzzz/demo.git

4. 避免每次为SSH-KEY输入密码

4.1 以下的生命周期为某个Console

#会重新开启一个ssh-agent进程
eval `ssh-agent -s`
ssh-add /home/user/.ssh/id_rsa
ssh-add /home/user/.ssh/id_rsa_yyyyy
ssh-add /home/user/.ssh/id_rsa_zzzzz

以后以下操作就不用输入密码了

ssh -T git@git.oschina.net
ssh -T git@git.oschina.net-yyyyy 
ssh -T git@github.com

4.2 使用keychain,重启后失效,ssh-agent进程重启了

sudo apt-get install keychain

#添加以下到${HOME}/.bashrc 或者 /etc/bash.bashrc
keychain /home/user/.ssh/id_rsa  /home/user/.ssh/id_rsa_yyyyy /home/user/.ssh/id_rsa_zzzzz
. ~/.keychain/`uname -n`-sh

注意把#开头的注释都删除哈!

参考链接

相关文章

  • Ubuntu系统git多账号配置

    1. 如何生成ssh公钥(摘录自git.oschina.net) 你可以按如下命令来生成 sshkey: 查看你的...

  • windows系统下配置多个git账号以及SSH

    本文以配置github.com账号和git.oschina.net账号来逐步演示在Windows环境下配置Git多...

  • git多账号配置

    git多账号配置 1. 生成ssh密钥 出现 Could not open a connection to you...

  • git多账号配置

    由于公司gitlab账号是ssh:git@...::818这种情况的所以今天按照文档一直没配置成功,然后增加了一个...

  • git多账号配置

    工作中往往我们会遇到这种情况, 公司给了邮箱, 采用类似gitlab之类的git服务托管商, 而我们又拥有自己的g...

  • git多账号配置

    在实际工作中,常常会遇到多个git帐号(即多个远程仓库)的情况,这时候如果只有一个SSH-key则无法满足现有要求...

  • Git 多账号配置

    问题描述 git是目前使用的非常广泛的一个开源的分布式版本控制系统,大部分公司都在使用,然后大家又有自己的Gith...

  • git 多账号配置

    生成新密钥 注册新的私钥 查看私钥列表 新建config文件

  • git多账号配置

    公司用的是icode,自己的项目用的是github托管,用户名和证书不一样,需要配置两份 有多种方式: 生成con...

  • Ubuntu安装git

    Ubuntu 安装Git前检查系统有没有安装 安装Git输入密码安装 配置信息,生成SSH配置 打开公钥文件

网友评论

      本文标题:Ubuntu系统git多账号配置

      本文链接:https://www.haomeiwen.com/subject/umyarxtx.html