【菜鸟搭建react项目之路7】【git】一个电脑两个git账号及sourceTree克隆、拉取、推送项目代码的方法与配置

有时候需要写一些小demo,又想存起来又不太好用公司的git账号,所以就想要在一台电脑上用两个git账号。下面是我创建ssh key以及提交代码的详细教程和坑。

一、一台电脑两个git(以下均为终端命令)

1.生成新的SSH Key

ssh-keygen -t rsa -C 'personal@email'

这里有个要注意的地方,因为要创建自己的key,那就不能跟原本公司的key重复(默认生成),所以这里不能一路回车,要在第一个对话的时候输入重命名(命名路径可以参考提示):

剩下的对话默认回车就行。

 

2.查看生成的公钥私钥

1 cd ~/.ssh        #进入存放ssh key的文件夹
2 ls               #该命令可以看到现在生成了自用的公钥和私钥


 

3.添加私钥

默认情况下会自动识别名为id_rsa的SSH Key,所以我们自用的私钥要手动添加

ssh-add ~/.ssh/id_rsa_personal

 

4.修改config配置

可能因为默认的公司账号用sourceTree连接且拉取推送过代码,所以我已经有config文件了,如果你没有的话,就在.ssh目录下添加一个就好了

1 touch config         #创建文件命令
2 vim config           #在终端打开文件,按i进入编辑,esc退出编辑状态。:wq 退出并保存    

为自用的ssh key添加配置:

#公司的
Host  #公司的Host
HostName  github.com      #真实的域名地址
User  #公司的username
PreferredAuthentications  publickey
IdentityFile  /Users/*********/.ssh/id_rsa


#你的
Host  my_github.com      #域名别称,自定义。⚠️注意:别跟公司的Host重名
HostName  github.com     #真实的域名地址
User  #你的username
PreferredAuthentications  publickey
#RSAAuthentication  yes
IdentityFile  /Users/*********/.ssh/id_rsa_personal   #id_rsa地址


5.测试配置

1 ssh -T git@my_github.com
2 #如果配置正确会提示:
3 # Hi your-name You've successfully authenticated, but GitHub does not provide shell access.

 


 

二、clone项目到本地

 

1.sourceTree克隆

github官网:

image

 

sourceTree:

image

 

image

 

克隆成功:

image

  

2.编辑sourceTree账户信息

本来默认是使用全局用户设置的,但是现在咱有两个git账号了,所以自己的项目和公司的项目要用不同的用户设置以作区分。username和useremail填github的就行:

image

 

3.编辑项目配置

自己的项目不能用全局配置啦,要用局部配置,先在终端进到本项目的根目录。

有个很快的方法,在sourceTree中点击【终端】,进去就在根目录下啦:

image

配置config:

git config --edit.    #可以打开config文件,并编辑

 

下面是我的局部配置,大家可以参考下:

[core]
        repositoryformatversion = 0
        filemode = true
        bare = false
        logallrefupdates = true
        ignorecase = true
        precomposeunicode = true
[remote "origin"]
        url = git@my_github.com:[git的名字]/[项目的名字].git       #请注意这里的写法是 git@yourHost:username/project-name.git
        fetch = +refs/heads/*:refs/remotes/origin/*
        pushurl = git@my_github.com:[git的名字]/[项目的名字].git   #写法同上
[branch "main"]
        remote = origin
        merge = refs/heads/main
[user]
        name = #username
        email = #useremail
[credential]
        helper = store

保存配置

 

4.代码提交成功!

image

 


 

 

参考:https://www.cnblogs.com/fanbi/p/7825746.html

 

posted @ 2021-12-10 00:01  leah-xx  阅读(1137)  评论(0编辑  收藏  举报