笔者在学习git的过程中有个疑惑,那就是git里面初始化配置的user.name和user.email是配置的github账户吗?那它与github里面的username,name,email有什么区别呢?
首先我们抛开github,只看git,先来看一下git初始化配置的代码。
#git初始化配置,非github账户配置
git config --global user.name "YOUR NAME"
git config --global user.email "YOUR@EMAIL.com"
早期的话,互联网网速并不发达,更没有github这种网站,linux内核开发者通过git来版本控制开发,但是由于开发者人数众多,以示区分,于是开发者需要设置自己的user.name和user.email,这样的话相当于开发者与开发者之间形成了身份上的区别,大量代码管理的时候才知道具体操作代码的是谁?
后来随着互联网网速的发展,github、gitlab、gitee这样的网站应运而生,那么即使没有github这样的网站,我们git照样可以版本控制,git是所有github、gitlab、gitee的基础,只不过类似github网站解决了两个问题,第一,私有远程仓库的问题,企业或者个人级别商业项目可以使用github作为私有仓库来协同开发;第二,公共远程仓库的问题,其实GitHub是一个开源协作社区,通过GitHub,既可以让别人参与你的开源项目,也可以参与别人的开源项目,如果是企业或者个人级别开源项目,放到GitHub上是完全没有问题的,我们一直用GitHub作为免费的远程仓库。
那github的username是指我们注册github的用户名,用于登陆用。name相当于昵称,email是注册账号时用的,后期登陆,找回密码,风险操作消息提示等都需要email。
所以,根据历史的发展原因,就是git里面的user.name和user.email与github里面的username,name,email没有任何直接关系,并不是在git里面配置github的账户,因为提交到远程仓库github两种方式,第一种https方法是需要每次提交代码的时候输入github的username和email,配置的地方与git初始化配置的地方没有直接关系且不存在覆盖关系,当然我们也可以自动登陆github,第二种是通过ssh秘钥提交代码,与git初始化配置的地方没有直接联系。
原创文章,作者:huoxiaoqiang,如若转载,请注明出处:https://www.huoxiaoqiang.com/experience/gite/1629.html