Git小记 ------ 小白上手,跑得快 ~~~

目录

1.起步--关于版本控制

(1).使用版本控制软件的好处

(2).控制系统的分类

二.Git 基础概念

1.1 什么是Git

2.2.1 Git直接记录快照而非差异比较

2.3.1 近乎所有操作都是本地执行

2.4 Git 中的三个区域

2.5.1 Git 中的三种状态

注意:

2.6.1 基本的 Git 工作流程

3.Git 基本操作

1.1 获取 Git 仓库的两种方式

2.1 在现有目录中初始化仓库

3.1 工作区中文件的 4 种状态

17.1 .gitignore 文件的例子


1.起步--关于版本控制

(1).使用版本控制软件的好处

Git小记 ------ 小白上手,跑得快 ~~~_第1张图片

(2).控制系统的分类

1.本地版本控制系统

单机运行,使维护文件版本的操作工具化

2.集中化的版本控制系统

联网运行,支持多人协作开发;性能差、用户体验不好

3.分布式版本控制系统          

 联网运行,支持多人协作开发;性能优秀、用户体验好

二.Git 基础概念

1.1 什么是Git

 Git 是一个开源的分布式版本控制系统,是目前世界上最先进、最流行的版本控制系统。可以快速高效地处理从很小到非常大的项目版本管理。

特点:项目越大越复杂,协同开发者越多,越能体现出 Git 的高性能和高可用性!

2.2.1 Git直接记录快照而非差异比较

  1. SVN 的差异比较

    传统的版本控制系统(例如 SVN)是基于差异的版本控制,它们存储的是一组基本文件和每个文件随时间逐步累积的差异 ​ 好处:节省磁盘空间 ​ 缺点:耗时、效率低;在每次切换版本的时候,都需要在基本文件的基础上,应用每个差异,从而生成目标版本对应的文件

    1. Git 的记录快照

      Git 快照是在原有文件版本的基础上重新生成一份新的文件,类似于备份。为了效率,如果文件没有修改,Git 不再重新存储该文件,而是只保留一个链接指向之前存储的文件。 ​ 缺点:占用磁盘空间较大 ​ 优点: 版本切换时非常快,因为每个版本都是完整的文件快照,切换版本时直接恢复目标版本的快照即可。 ​ 特点: 空间换时间

2.3.1 近乎所有操作都是本地执行

1.在 Git 中的绝大多数操作都只需要访问本地文件和资源,一般不需要来自网络上其它计算机的信息

特性:

① 断网后依旧可以在本地对项目进行版本管理

​ ② 联网后,把本地修改的记录同步到云端服务器即可

2.4 Git 中的三个区域

1.工作区

2.暂存区

3.Git 仓库

2.5.1 Git 中的三种状态

Git小记 ------ 小白上手,跑得快 ~~~_第2张图片

注意:

⚫ 工作区的文件被修改了,但还没有放到暂存区,就是已修改状态。

​ ⚫ 如果文件已修改并放入暂存区,就属于已暂存状态。 ​

⚫ 如果 Git 仓库中保存着特定版本的文件,就属于已提交状态。

2.6.1 基本的 Git 工作流程

Git小记 ------ 小白上手,跑得快 ~~~_第3张图片

基本的 Git 工作流程如下:

① 在工作区中修改文件 ​

② 将你想要下次提交的更改进行暂存 ​

③ 提交更新,找到暂存区的文件,将快照永久性存储到 Git

3.Git 基本操作

1.1 获取 Git 仓库的两种方式

① 将尚未进行版本控制的本地目录转换为 Git 仓库

② 从其它服务器克隆一个已存在的 Git 仓库

以上两种方式都能够在自己的电脑上得到一个可用的 Git 仓库

2.1 在现有目录中初始化仓库

① 在项目目录中,通过鼠标右键打开“Git Bash”

② 执行 git init 命令将当前的目录转化为 Git 仓库

git init 命令会创建一个名为 .git 的隐藏目录,这个 .git 目录就是当前项目的 Git 仓库,里面包含了初始的必要文件,这些文件是 Git 仓库的必要组成部分

3.1 工作区中文件的 4 种状态

Git小记 ------ 小白上手,跑得快 ~~~_第4张图片

Git 操作的终极结果:让工作区中的文件都处于“未修改”的状态。

12.1 向暂存区中一次性添加多个文件

1.如果需要被暂存的文件个数比较多,可以使用如下的命令,一次性将所有的新增和修改过的文件加入暂存区: git add .

2.今后在项目开发中,会经常使用这个命令,将新增和修改过后的文件加入暂存区

14.1 跳过使用暂存区域

  1. Git 标准的工作流程是工作区 → 暂存区 → Git 仓库,但有时候这么做略显繁琐,此时可以跳过暂存区,直接将工作区中的修改提交到 Git 仓库,这时候 Git 工作的流程简化为了工作区 → Git 仓库

  2. Git 提供了一个跳过使用暂存区域的方式, 只要在提交的时候,给 git commit 加上 -a 选项,Git 就会自动把所有已经跟踪过的文件暂存起来一并提交,从而跳过 git add 步骤:git commit -a -m “日志”

15.1 移除文件

① 从 Git 仓库和工作区中同时移除对应的文件 git rm -f index.js ② 只从 Git 仓库中移除指定的文件,但保留工作区中对应的文件 git rm --cached index.css

16.1 忽略文件

  1. 一般我们总会有些文件无需纳入 Git 的管理,也不希望它们总出现在未跟踪文件列表。 在这种情况下,我们可以创建一个名为 .gitignore 的配置文件,列出要忽略的文件的匹配模式。文件 .gitignore 的格式规范如下:

  2. ① 以 # 开头的是注释

  3. ② 以 / 结尾的是目录

  4. ③ 以 / 开头防止递归

  5. ④ 以 ! 开头表示取反

  6. ⑤ 可以使用 glob 模式进行文件和文件夹的匹配(glob 指简化了的正则表达式) - 星号 * 匹配零个或多个任意字符 - [abc] 匹配任何一个列在方括号中的字符 (此案例匹配一个 a 或匹配一个 b 或匹配一个 c) - 问号 ? 只匹配一个任意字符 - 两个星号 ** 表示匹配任意中间目录(比如 a/**/z 可以匹配 a/z 、 a/b/z 或 a/b/c/z 等)在方括号中使用短划线分隔两个字符, 表示所有在这两个字符范围内的都可以匹配(比如 [0-9] 表示匹配所有 0 到 9 的数字)

17.1 .gitignore 文件的例子

Git小记 ------ 小白上手,跑得快 ~~~_第5张图片

18.1 实现添加图书功能

Git小记 ------ 小白上手,跑得快 ~~~_第6张图片

19.1 回退到指定的版本

Git小记 ------ 小白上手,跑得快 ~~~_第7张图片

 

 

你可能感兴趣的:(javascript,typescript,前端,es6)