一、什么是 GIT
Git是一款免费、开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。 Git是用于Linux内核开发的版本控制工具。与CVS、Subversion一类的集中式版本控制工具不同,它采用了分布式版本库的作法,不需要服务器端软件,就可以运作版本控制,使得源代码的发布和交流极其方便。Git的速度很快,这对于诸如Linux内核这样的大项目来说自然很重要。Git最为出色的是它的合并追踪(merge tracing)能力。
当代码量很大,而且需要人工的处理不同的版本时,如果仅仅通过拷贝来做相应备份是非常麻烦的,这时候就需要用 Git 来管理我们的代码。而且 Git 可以随意进行版本的切换,假如我们不再想用修改后的版本二,只需要用 GIt 将其还原为版本一即可。
二、GIT 的安装
安装GIt 很简单,与其他软件没有区别,在软件商店直接下载安装即可,我用的是软件盒子;
随后出现弹框,依次点击“下一步”。需要注意的是记住 Git 的安装路径,因为想要在开发软件使用 Git 仅仅下载安装还不行,还需要在开发软件中进行配置。
安装完成后 Git 目录如下:
Git 命令相关操作命令在 git-bash 中书写,git-bash 也可以直接在桌面右键打开。
三、使用 Git 管理项目
1. 准备
首先我们在电脑桌面创建一个文件夹,我们将它命名为 project,假设这个 project 文件夹就是我们所开发的项目。接下来通过 Git 对我们的“项目”进行相关管理。
在 project 文件夹下 右键 --> Git Bash Here 打开 Git 命令行;
2. 初始化 Git 仓库
在 Git 命令行中 git init 新建一个文件夹,用于管理我们的代码;git 指的是我们使用 Git 这款软件进行管理,init 意为初始化;
按下回车后会提示创建成功:在 C:/Users/Administrator/Desktop/project/.git/ 目录下初始化空的 Git 存储库,也可以说是空的 Git 仓库。
注意刚刚创建后 .git 是一个隐藏目录,我们需要设置开启隐藏才能看到该目录。在文件夹点击 查看 --> 显示 --> 隐藏的项目。
如下,项目目录中已经有了我们创建的空的 Git 仓库。之后 Git 会自动帮我们将代码备份到这个 .git 目录当中。
初始化 Git 仓库完成之后,就可以在 project 目录中正常进行开发了。
3. 配置 Git 使用者的用户名和邮箱
使用 git config --global user.name "用户昵称" 配置用户名,输入命令后回车,没有任何提示,则说明用户名设置成功;
使用 git config --global user.email "用户邮箱" 配置用户邮箱;同样没有任何提示,说明设置成功。
进行以上配置后,Git 除每次会将我们的项目相关文件自动备份至 .git 仓库之外,也会自动存储我们的个人信息,这样就知道每一次操作是由谁来进行的了。
4. 将代码存储到 Git 仓库中
我们在项目目录 project 中 创建一个文件 test.html,作为代码文件用于存储。
将代码文件存储至 Git 仓库需要两步,首先使用 git add ./添加的文件名 添加代码文件至暂存区,此处的相对路径 ./ 就代表当前目录 project。
(如果有多个文件需要提交,也可直接输入命令 git add ./ ,这样就会把相对路径下的所有代码文件添加至暂存区;)
接下来进行存储,使用 git commit -m "说明信息" 将刚添加至暂存区的代码文件提交至仓库,commit 为提交,-m 表示信息,注意说明信息必须写。
代码文件修改后,重复上面操作 先添加 再提交 即可;
如果觉得上面两步过于繁琐,在修改若干代码文件后,也可以直接使用命令 git commit --all -m "说明信息" 直接将目录下的所有文件提交,而不用先添加。
5. 查看文件状态
对于一个代码文件,我们有时候会忘记对它做过那些操作,比如这个文件现在是什么状态?在暂存区?还是已经提交?或者是修改了但未提交?这个时候我们就需要通过 git status 命令查看它的状态。如下:此时未做任何修改且已经提交。
我们试着将 test.html 修改为 test.txt 后再次添加后查看状态;如下显示 test.html 已删除,添加了新的文件 test.txt;
6. 查看日志(提交记录)
当想要知道已经向GIT仓库提交了多少次文件时,就可以使用命令 git log 来查看日志;如下图,我们已经提交了两次,提交者为 xiaoma<ma_jinjian@163.com>。
为了便于查看我们也可以设置提交日志为一行显示,这样更加精简,命令为 git log --oneline;如下显示有两个版本,前面为版本号,后面为版本描述信息。
7. 版本回退
如果说在修改代码时不小心进行了误操作,比如误删除了代码、代码改错了等,在 GIT 中这些问题都不需要担心,使用命令 git reset --hard head~0 进行版本回退即可,reset 意为重置, head 表示离当前版本最相近的上一版本,~0 则代表往前回退一次,~1 则代表两次...,如下图表示目前处于 2ab6b4c 版本。
8. 通过版本号切换版本
如果一个项目中版本有很多,这时候再用版本回退的方式就显得有点笨重且不准确。而更简单的方式就是直接通过版本号切换版本,命令为 git reset --hard 版本号;
但此时也会有一个问题,版本号过多时我们很难记忆,而且在切换版本之后,再使用 git log 命令显示日志也只会显示当前版本一个日志;那么这个时候我们就可以使用命令 git reflog 来列出所有操作过程中经历的版本号。