微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Git常见的名词是什么

本篇内容主要讲解“Git常见的名词是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Git常见的名词是什么”吧!

working space/working tree

当前工作区

index/stage

临时保存区, 缓存区;

在工作区修改内容后, 用git add/git stage命令可以把修改信息提交到 index/stage

commit/revision

最终保存区,用git commit命令可以新建一个 revision/commit 把 index/stage 中的修改信息保存进去。

remote

远程仓库;

revision/commit history

Git库中的每一个分支都有一个用于保存 revision/commit 的栈,叫做 revision/commit history

每次用commit命令提交修改,都会在当前分支的 revision/commit history 顶部新建一个 revision/commit 用于保存提交的修改

history head

处于某个 revision/commit history 顶部的 revision/commit ,称为该 revision/commit history 的 head (头部)。

base directory

通过普通方式新建一个Git库,即在一个空目录下执行git init命令;

会在当前目录下自动生成一个 .git 文件夹,用于保存除工作区内容外的对象、引用等等内容

通过别的方式创建或克隆的Git库中,可能会用别的目录代替 .git 目录来保存这些内容

不管是普通Git库的 .git 目录还是特殊Git库中它的替代品,统称为它们所属Git库的 base directory (基目录)。

revision/commit hash

就像编程中常见的name和id一样,Git中的 hash 也是一种代表某个对象的符号;

我们可以把 revision/commit hash 简单地理解为 revision/commit 的id;

不过和一般的name或id不同,Git中的 hash 是由它所代表的对象的数据通过SHA算法计算出的校验和值;

关于SHA算法和校验和请参考编程常见名词的概括性解释

reference

可以简单理解为Git版的指针变量;

Git中所有的对象都是保存在硬盘中的一个文件,有些文件中保存了数据内容,而有些文件中只是保存了指向其它对象的路径、 hash 等,这种文件对应的抽象化对象就叫做 reference (引用);

就像指针变量可以指向其它指针变量一样,Git中也有指向其它引用的引用;

.git 目录或其它形式的基目录下的 refs 目录中,保存了当前Git库中的所有引用。

HEAD

Git预定义的引用,认指向当前分支的 history head ;

refs/heads 目录下的 master 文件,就是主分支的 HEAD文件,其中保存了主分支的 history head 的 hash ;

如果一个Git库有多个分支,则每个分支在 refs/heads 目录下都会有一个属于它的 HEAD文件

这些 HEAD文件 和它们所属的分支同名,内容为它们所属的分支的 history head 的 hash ;

index/stage entry

Git中在 index/stage 或 revision/commit 中保存的并不是文件的副本,而是记录文件内容修改相关信息的对象;

这种对象就叫做 index/stage entry

untracked

在 index/stage 中没有 entry 的文件叫做 untracked (未追踪)文件

tracked

在 index/stage 中已有 entry 的文件叫做 tracked (已追踪)文件

unstaged

已追踪且拥有未提交到 index/stage 的修改文件,叫做 unstaged 文件

staged

所有修改都已经提交到 index/stage 中的文件,叫做 staged 文件

commit/revision message

即 commit/revision 描述信息;

通过认方式向 commit/revision 提交修改,即执行git commit命令时;

Git会打开文本编辑器让用户输入一段描述本次修改的信息;

该信息会和本次修改内容一起保存进对应的 commit/revision 对象。

Git 配置文件

Git中有三个级别的配置文件

Git/etc/gitconfig : Git安装目录 Git 下的配置文件,称为全局配置文件

home/user_name/.gitconfig : 用户主目录 home/user_name 下的配置文件,称为用户配置文件; Windows系统下的用户主目录由用户环境变量中的 HOME 变量指定;

.git/config : Git库的基目录下的配置文件,称为库配置文件

全局配置文件作用域最大,对所有库都有效,但是优先级最低,用户配置文件和库配置文件都能覆写它的配置;

用户配置文件对当前用户创建的所有Git库有效,优先级高于全局配置文件,低于库配置文件

配置文件只对当前库有效,但优先级最高;

commit/revision描述信息模板文件

通过认方式向 commit/revision 提交修改,即执行git commit命令时;

在编辑器中打开的用于编辑 commit/revision 描述信息的临时文件中,显示的就是基于该模板文件内容生成的初始内容

该模板文件可通过Git配置文件中的配置变量commit.template指定。

到此,相信大家对“Git常见的名词是什么”有了更深的了解,不妨来实际操作一番吧!这里是编程之家网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐