美文网首页
git多账户设置

git多账户设置

作者: okeeper | 来源:发表于2017-01-03 14:54 被阅读0次

    你是否遇到过在公司电脑撸码时需要链接到公司的git私服,同时又要写写个人的代码到github的尴尬,我想你一定有过,接下来就教大家怎么在一台电脑设置多个git账户

    方法一,使用配置多个ssh私钥

    1. 步骤一

    使用ssh-keygen 命令生成新的一组id_rsa_new和id_rsa_new.pub。

    ssh-keygen -t rsa -C "new email"
    

    平时我们都是直接回车,默认生成id_rsa和id_rsa.pub。这里特别需要注意,出现提示输入文件名的时候要输入与默认配置不一样的文件名,比如: id_rsa_new。

    2. 步骤二

    配置~/.ssh/config文件,以我自己的机器为例

    #First Git可以随便取
    Host baibei
    #IP Address #域名也可
    HostName 120.24.222.xxx
    #user.name 里面的名字
    User zhangyue
    #制定对于生成的私钥文件
    IdentityFile ~/.ssh/id_rsa
    
    #Second Git
    Host github
    HostName github.com
    User zhangyue0808@qq.com
    IdentityFile ~/.ssh/id_rsa_github
    

    Host就是每个SSH连接的单独代号,IdentityFile告诉SSH连接去读取哪个私钥。

    3. 步骤三

    执行ssh-agent让ssh识别新的私钥。

    ssh-add ~/.ssh/id_rsa_github
    

    该命令如果报错:Could not open a connection to your authentication agent.无法连接到ssh agent,可执行ssh-agent bash命令后再执行ssh-add命令。以后,在clone或者add remote的时候,需要把config文件中的host代替git@remoteaddress中的remoteaddress。
    同时,你可以通过在特定的repo下执行下面的命令,生成区别于全局设置的user.name和user.email。

    同时,你可以通过在特定的项目git根路径下下执行下面的命令,生成区别于全局设置的user.name和user.email。

    git config user.name "newname"
    git config user.email "newemail"
    #git config --global --unset user.name 取消全局设置
    #git config --global --unset user.email 取消全局设置
    

    使用http方式提交

    不适用ssh方式提交代码,在具体项目中使用具体的http地址,这样就可以随意切换提交地址了

    git clone http://url.git
    git push origin master
    输入密码:*****
    

    相关文章

      网友评论

          本文标题:git多账户设置

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