Git 基础知识

本节,我们将进入 Git 基础知识学习,不过,我们不是从概念入手学习,而是通过上节我们在 Github 上创建的代码仓库作为例子,来实战演练。

1. 安装 git

在学习 git 命令之前,我们需要先安装并配置好 git 。

1.1 下载 git

打开 git 官网,下载并安装,直接按照默认参数安装即可。安装完成后,打开命令行,输入命令 git --version 验证是否安装成功,如果安装成功,会显示 git 版本号。
图片描述

1.2 配置 git

打开命令行,依次输入下面两条命令:

git config --global user.name "username"
git config --global user.email "email"

将 username 和 email 换成 github 的用户名和密码,配置完成后执行命令 git config --list,可以查看现在的配置信息。

2. 生成 ssh key 密钥

  1. 在生成 ssh key 之前我们可以先到本地磁盘看看有没有之前生成过的。点击鼠标右键,图片描述
    然后点击 “git bash”,可以调出 git 命令行,输入 cd ~/.ssh,进入到目录后输入 ls ,查看是否存在密钥。如果没有,则需要手动生成,可以看到我这边现在是没有密钥文件的;
    图片描述
  2. 通过下面的命令生成 ssh key:ssh-keygen -t rsa -C "youremail@example.com",这里的邮箱可以就填你 github 绑定的邮箱,然后一直回车即可完成当前步骤,图片描述
    完成后再查看一下目录,可以看到已经生成好了两个密钥,id_rsa 文件是私钥,不需要上传,id_rsa.pub 文件是公钥,是需要上传的;
  3. 登录 Github 。打开 setting -> SSH keys,点击右上角 New SSH key,把生成好的公钥 id_rsa.pub 放进 key 输入框中,再为当前的 key 起一个 title 即可。图片描述

3. 下载仓库

在下载代码仓库之前,我们先在本地新建一个文件夹,专门存放我们的项目。在上一节中,我们都建立了自己的代码仓库,现在进入到仓库,点击 “Clone or download”,可以看到如下图:
图片描述
点击复制按钮,复制好地址后,进入到我们刚才新建的文件夹目录,点击鼠标右键,然后点击 “git bash”,调出 git 命令行,输入 git clone,然后点击鼠标右键,把我们刚才复制的仓库地址粘贴在这里,按下回车后代码就可以下载到本地文件夹下面了,如果像下图这样没有任何报错,说明下载成功。
图片描述

4. 修改并上传

4.1 修改文件

使用你自己喜欢的编辑器打开刚刚下载下来的项目,如果你写的是前端项目,推荐使用 VSCode 编辑器,对于前端开发十分友好。打开项目后,我们可以随意地添加,删除,修改文件。

4.2 git add

完成修改后,第一步,需要将修改的文件添加到暂存区,使用命令 git add,git add 命令有很多可选参数,比较常用到的有两个,git add <path>git add .,当你只是想把制定的文件添加到暂存区的时候,可以使用第一个命令,指定具体文件,当你想把所有修改的文件都添加的时候,就使用第二个命令。

这里提到了一个暂存区的概念,可能难以理解,暂存区是个啥?为啥要有暂存区?

我们可以思考这样一个问提:有时候你一次性修改了许多文件,然而其实这些文件,有些跟需求 A 有关,有些跟需求 B 有关,因为实际工作中大多数时候我们都是多个需求并行开发的,明明是两个独立的需求,你一次就把所有修改的文件全部提交上去了,那么就不能保证提交历史的清晰。所以这时候文件的选择就可以交给暂存区去做,每一次提交都是一个完整的功能开发,保证提交历史干净清晰。

由于这里我们是测试项目,所以可以直接使用 git add . 命令,把刚刚修改的文件全部添加到暂存区。我这里就修改一下我的 readme 文档,然后添加。

图片描述
没有报错,说明添加成功。

4.3 git commit

git commit 主要是将暂存区里的文件给提交到本地的版本库。git commit 命令也有很多可选参数,用到最多的是 git commit -m "message",相当于给我们的这次提交起个名字,当然要是有意义的名字。
图片描述
这里还有个小技巧,如果当你使用某个命令不知道要加什么参数的时候,可以使用 help 命令,例如这里,使用 git commit --help,就可以跳转到官网相关文档。

4.4 git push

在使用 git commit 命令将修改从暂存区提交到本地版本库后,只剩下最后一步将本地版本库的分支推送到远程服务器上对应的分支了。git push 的一般形式为 git push的一般形式为 git push origin <远程分支名>,例如 git push origin如果该远程分支不存在,则会被新建。如果当前分支只有一个远程分支,那么命令可以直接简化成 git push图片描述
可以看到,当执行完 git push 后,远端的仓库也变成了最新的代码,而且还可以看到我们刚才的 commit 信息,这样我们就完成了依次代码仓库修改了。

5. 总结

通过本节,我们学会了简单使用 Git 来将远端仓库 clone 到本地后进行修改,然后再将最新代码同步到远端仓库。当然,实际工作中的遇到的操作和流程肯定会比这个复杂,不过万变不离其宗,只要我们打好基础,就可以轻松应对。