Git 中 HEAD 和 master 有什么区别?


Git 中的分支是一系列相互关联的提交。当在 Git 中初始化一个仓库时,会默认创建一个分支。这个默认分支称为master

可以在 Git 仓库中创建多个分支。当开发人员开始处理项目的新功能时,他可以创建一个新的功能分支,并与master分支隔离工作。功能完成后,该分支中的更改将合并到master分支。换句话说,master分支将成为主要的工作线。master本身是指向最新提交的指针。

HEAD是一个指向master的引用。每次提交时,Git 默认都会更新masterHEAD指针,使其指向最后一次提交。

考虑一个例子:

假设开发人员 A 先生将一些代码提交到仓库中,提交哈希值为 Commit#1。重要的是要记住,master指针是在执行第一次提交时创建的,现在这个指针将指向…

下图解释了这个概念。

我们可以将 HEAD 从第一次提交分离,如下图所示。master 指向最后一次提交,但我们将HEAD移回到第一次提交。在 Git 中移动 HEAD 很容易。

此外,当我们有多个分支时,HEAD有助于找出我们当前正在处理哪个分支。下图有两个分支,第一个是master分支,另一个是功能分支。现在要想知道我们正在处理哪个分支,只需检查HEAD指针即可。

更新于:2021年2月20日

6K+ 次浏览

开启您的职业生涯

完成课程获得认证

开始学习
广告