Git 中 HEAD 和 master 有什么区别?
Git 中的分支是一系列相互关联的提交。当在 Git 中初始化一个仓库时,会默认创建一个分支。这个默认分支称为master。
可以在 Git 仓库中创建多个分支。当开发人员开始处理项目的新功能时,他可以创建一个新的功能分支,并与master分支隔离工作。功能完成后,该分支中的更改将合并到master分支。换句话说,master分支将成为主要的工作线。master本身是指向最新提交的指针。
HEAD是一个指向master的引用。每次提交时,Git 默认都会更新master和HEAD指针,使其指向最后一次提交。
考虑一个例子:
假设开发人员 A 先生将一些代码提交到仓库中,提交哈希值为 Commit#1。重要的是要记住,master指针是在执行第一次提交时创建的,现在这个指针将指向…
下图解释了这个概念。
我们可以将 HEAD 从第一次提交分离,如下图所示。master 指向最后一次提交,但我们将HEAD移回到第一次提交。在 Git 中移动 HEAD 很容易。
此外,当我们有多个分支时,HEAD有助于找出我们当前正在处理哪个分支。下图有两个分支,第一个是master分支,另一个是功能分支。现在要想知道我们正在处理哪个分支,只需检查HEAD指针即可。
广告