Git系列(四)——Git的一些基本操作

一、Git 状态

Git管理的文件有5种状态:

  • 未跟踪: 新添加的文件,或者移除跟踪的文件,通过git add 添加 状态
  • 未修改: 默认状态,从仓库出来的默认状态,无修改的状态
  • **已修改: ** 修改或者新增文件的状态
  • 已暂存: 修改、新增文件加入暂缓区的状态
  • 已修改: 从暂缓区提交到版本库

二、Git的配置文件的有关命令

三种配置文件

  • 系統全局配置:所有用戶、仓库的配置信息
  • 用户全局配置:当前系统用户的全局配置
  • 仓库/项目配置:
1
2
3
4
5
6
7
8
9
10
11
12
13
# 查看git配置
$ git config --list
$ git config -l

# 查看系统配置
$ git config --system --list

# 查看当前用户的全局配置
$ git conifg --list --global

# 查看当前仓库配置信息
$ git config --local --list

配置 - 忽略文件.gitgnore

Git图片2.3

这个文件里面配置的就是你在山传文件的时候忽略哪些类型的文件,这里面的主要语法就是Linux的通配符,常用通配符

1
2
3
4
5
6
# 表示注释
*.md #表示忽略所有后缀为md的文件
!1.md #表示忽略除了1.md外的文件
/bin #仅忽略项目根目录下bin文件,不包括其他目录下的
bin/ #忽略bin/目录下的所有文件
bin/*.md #举个例子:忽略bin/1.md但是不忽略bin/a/1.md

三、Git的GUI工具(选学)

​ GUI界面:直白就是使用鼠标操作的git,前面我们所学的可以称之为 使用键盘输入的git

GUI管理工具:SourceTree

SourceTree官网 下载

  • 基本就是通过按钮的方式支持管理多个仓库,通过+按钮,可选择多种方式添加仓库

四、创建本地工作取仓库

一般就是两个办法:

  • 一种是创建完全新的仓库:git init,会出现一个**.git**文件夹
  • 另一种是克隆远程仓库,git clone 复制仓库对应的HTTPS

五、暂存区add

git add命令就是把需要提交的所有修改放到暂存区(Stage)里去,然后,执行git commit就可以将所有暂存区的内容添加到版本库离去。

指令 描述
git add 多个文件或者目录 添加文件到暂存区,包括修改的文件和新增的文件和文件夹(包括子目录)
git add . 同上,添加所有修改、新增文件(未跟踪)到暂存区
git rm 文件 删除工作区文件,并且将这次删除放入暂存区
git mv 文件名1 文件名2 将文件名字修改后同时加入暂缓区内

六、提交记录commit

每次git commit之后就会生成一个快照记录id + 描述 +快照内容按照时间顺序存储在数据库里面,如下图

  • git commit id:这个id我们一般不需要将所有的位数都写出来,只需要取其中几个即可,这个就是git的核心强大功能之一

  • git commit -m “描述信息:提交变更,参数-m设置提交的描述信息,应该正确提交,不带该参数会进入说明编辑模式。这个描述信息最好精确填写,方便后续寻找记录

  • 快照:记录在\.git\objects里面

  • 多个提交形成的时间线(图解)

    git5.1

  • git commit -a: 参数-a 作用就是可以将工作区提交到版本库,跳过了git add,但是不会添加新增文件

  • git log [-n数字] [–oneline] [-] [–follow 文件]: 参数-n数字作用是显示指定次数的日志信息,本人目前只提交过两次信息。参数--oneline可以将每次提交信息一行输出,--graph 可视化显示分支关系,--follow 文件 显示某个文集拿的版本历史

    Git5.2

  • git reflog: 查看所有历史记录(上面中图片中的HEAD,就是你目前指向版本库的位置)

  • git status:查看本地仓库状态,比较常用的指令,加参数-s为简洁模式