【菜鸟搭建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官网:
sourceTree:
克隆成功:
2.编辑sourceTree账户信息
本来默认是使用全局用户设置的,但是现在咱有两个git账号了,所以自己的项目和公司的项目要用不同的用户设置以作区分。username和useremail填github的就行:
3.编辑项目配置
自己的项目不能用全局配置啦,要用局部配置,先在终端进到本项目的根目录。
有个很快的方法,在sourceTree中点击【终端】,进去就在根目录下啦:
配置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.代码提交成功!
参考:https://www.cnblogs.com/fanbi/p/7825746.html