Git
历史
-
一个分布式的版本控制软件,最初由 Linux 开发者社区的人们开发,具有快速、能够支持复杂的非线性开发的特点。
-
基于快照的版本控制,而不是基于差分的版本控制:记录的是快照流,而不是每个文件的差分流
-
几乎每个操作都是不需要联网的
-
用 SHA-1(160 位,表现为 40 个十六进制数字符)校验完整性
-
/usr/local/etc/gitconfig
:系统配置,对应的参数是--system
-
~/.gitconfig
:全局配置,对应的参数 是--global
-
.git/config
:仓库配置,对应的参数是--local
可以用
--list
查看所有当前配置,并且可以用--show-origin
来看是哪个文件引入的。 -
配置内容
-
user
块 -
user.name
:姓名 -
user.email
:电子邮件 -
core
块 -
core.editor
:默认使用的编辑器 -
在 Git 中,文件状态分为四种:
-
未追踪:不包含在上一次提交以及当前的暂存区
-
未修改:与上一次提交相同
-
已修改:与上一次提交不相同,而且还没有添加到暂存区
-
已暂存:与上一次提交相同,而且已经添加到暂存区
可以用
git status
来查看各种文件的状态。在一些其他命令中,不加参数一般指的是已修改的状态,加上--staged
或者--cached
是已暂存的状态。是一种匹配文件(而非文件夹)的类似正则表达式的字符串。规则:
-
*
匹配零个或多个字符(不含/
) -
[abc]
匹配其中的任一个 -
[0-9]
匹配一系列字符 -
a/**/z
匹配嵌套文件夹 -
?
匹配一个字符 -
!
取消该效果