Git专栏1:怎么配置git环境?git账号和密钥

前言:
Git是分布式版本控制系统,同一个Git仓库,可以分布到不同的机器上。怎么分布呢?最早,肯定只有一台机器有一个原始版本库,此后,别的机器可以“克隆”这个原始版本库,而且每台机器的版本库其实都是一样的,并没有主次之分。

你肯定会想,至少需要两台机器才能玩远程库不是?但是我只有一台电脑,怎么玩?

其实一台电脑上也是可以克隆多个版本库的,只要不在同一个目录下。不过,现实生活中是不会有人这么傻的在一台电脑上搞几个远程库玩,因为一台电脑上搞几个远程库完全没有意义,而且硬盘挂了会导致所有库都挂掉,所以我也不告诉你在一台电脑上怎么克隆多个仓库。

实际情况往往是这样,找一台电脑充当服务器的角色,每天24小时开机,其他每个人都从这个“服务器”仓库克隆一份到自己的电脑上,并且各自把各自的提交推送到服务器仓库里,也从服务器仓库中拉取别人的提交。

完全可以自己搭建一台运行Git的服务器,不过现阶段,为了学Git先搭个服务器绝对是小题大作。好在这个世界上有个叫GitHub的神奇的网站,从名字就可以看出,这个网站就是提供Git仓库托管服务的,所以,只要注册一个GitHub账号,就可以免费获得Git远程仓库。

Git 与 Github 的关系?

简单说,没有任何关系。
Git是一个免费的分布式版本控制系统,旨在快速高效地处理从小型到大型项目的所有事物。 不管是软件开发还是什么行业,代码、文档或者其他文件都不是一次性写完的,都需要有无数次的修改,无数个版本迭代,而Git 是一个很好的版本管理工具。这次写的不满意,可以直接回滚到自己想要的版本。
Github 是一个全球最大的用Git做版本控制的项目托管平台,同样的中国还有码云。两者都是使用 Git 做版本控制的项目托管平台,说白了,就是一个代码托管仓库。

所以,我本地电脑上安装好了Git环境,那么我可以选择用码云去托管我的项目,我可以修改 ,上传,版本回滚等等操作,同样我也可以选择用GitHub托管我的项目,去做这些操作。

Github码云其实在功能使用上并没有什么大的区别,比较显著的区别,Github是全球最大的代码托管仓库,资源丰富,一句话说就是只有你想不到,没有他做不到的。代码资源十分丰富,但是有些不可名状的原因,导致了其网速有点那啥,但是还是可以用的。码云相对来说资源并没有那么丰富,但是好在其是国内的代码仓库,速度相对来说稍微好一些。

所以,简单说,没有任何关系Git是一个开源的分布式版本控制系统。而 GitHub 本质上是一个代码托管平台,它提供的是基于Git的代码托管服务。对于一个团队来说,即使不使用 GitHub,他们也可以通过自己搭建和管理 Git 服务器来进行代码库的管理,甚至还有一些其它的代码托管商可供选择,如 GitLab,BitBucket 等。

imgA.jpg

好了,现在开始
进去一家新公司,在配置开发环境这步,我们需要配置gitsourcetree,拉去代码,这部分,流程。

一:MAC配置Git环境,安装Git

目前,官网好像是用Homebrew 来安装的,至于Homebrew介绍和安装,可以去我的文章有介绍,可以看看Homebrew的简介,以及安装和使用。

完成Homebrew的安装后,下面这里去Git官网,官网是Homebrew 命令行安装。
1,去git官网 根据下面截图点击进去

image.png

2,安装Git, 按照文字提示即可

image.png
$ brew install git
$ brew install git-gui

3,验证是否成功,输入命令行。输出Git版本表示Git安装成功。

git --version

比如:

JasondeMacBook-Pro-2:~ hll$ git --version git version 2.24.3 (Apple Git-128)

4,安装好Git后,配置用户名用户邮箱。在本地git中添加你得账户邮箱,需要注意这两个命令要一起输入 然后回车,单个输入没有反应的

  • 如果是去新公司,一般负责人会发给你用户名用户邮箱,填到下面就行了。
  • 如果是自己个人,那么就可以用自己的QQ邮箱,用户名随便取就行了,最好记住。

信息可以更改,以后想要更改使用上面指令就可以。

//这两个命令要一起输入然后回车,单个输入没有反应的
git config --global user.name "你的注册用户名"
git config --global user.email "你的注册邮箱"

查看一下自己的 user.nameuser.email是否正确,单个输入和一起输入都行:

//注册用户名
git config user.name
打印 :你的注册用户名

//注册邮箱 <直接粘贴请注意,这个email中的i很可能自动识别为l>
git config user.email
打印 :你的注册邮箱

二:生成秘钥

Git 服务器都使用 SSH 公钥进行认证。默认情况下,用户的 SSH 密钥存储在其~/.ssh目录下。

(1) 首先检查电脑是否曾经生成过秘钥

//cd ~/.ssh 网上很多说的是这个命令,但是我测试不行 无论生成与否 都无提示,所以使用下面这个命令
open  ~/.ssh

然后看看都有些什么文件

 ls

若打开该文件夹为空,则表示没有生成过秘钥,进入第二步。(~表示根目录)

(2) 生成秘钥

//[email protected] 
// 一般是公司给的gitlab账号,登陆gitlab 打开setting 里面有个profile里面那个邮箱
ssh-keygen -t rsa -C "[email protected]"
// 比如:ssh-keygen -t rsa -C "[email protected]"

回车,命令要求输入两次密码<开机密码最好>,三个回车即可。
成功的视图:

image.png

这过程中,会让你输入密码,一定要记住这个密码,后面在验证的时候需要用输入这个密码。

(3) 查看生成的秘钥
在终端执行下面命令,就可以看到秘钥的文件路径:

open  /Users/当前电脑用户/.ssh
//如   open  /Users/hll/.ssh
image.png

注意:
① 一般这个.shh文件,如果不用上面的命令open /Users/当前电脑用户/.ssh去查看,直接去截图的文件路径下查看,就算存在也不显示的,因为它默认隐藏的。

②执行成功后,生成密钥后,在本地的/Users/当前电脑用户/.ssh目录下会生成两个文件id_rsaid_rsa.pubid_rsa文件保存的是私钥,保存于本地,id_rsa.pub文件保存的是公钥,需要将里面内容上传到远端仓库。
id_rsa私钥文件,保存于本地;
id_rsa.pub公钥文件,需要将里面内容上传到远端仓库。

三:远端仓库添加密钥(公钥)

这里以GitHub为例子,向远端仓库添加公钥,上面已经获取到了公钥,只需要将公钥添加到远端仓库就可以了。

在什么平台托管代码,这个公钥就传到什么平台上去。如果是码云平台,那么将这个公钥传到码云平台就行。

image.png

在个人设置页面,左边选中SSH and GPG keys,在右边添加公钥,titlekey的名称,可以随便取,可更改,key是上面我们获取到的公钥,填写完毕后点击add SSH key按钮,这样远端就添加到了密钥。

①查看生成的公钥内容

cat ~/.ssh/id_rsa.pub //终端执行这个命令 就可以看到里面的内容
image.png

②复制内容到GitHub 一定要带上签名的ssh-rsa一起copy

image.png

到这里,相当于Git环境配置好了,而且也已经与github代码托管平台挂钩了。

那么,怎么把代码传到GitHub上呢?这篇文章有介绍上传工程或者文件到GitHub和删除GitHub上面文件和项目方法

你可能感兴趣的:(Git专栏1:怎么配置git环境?git账号和密钥)