1.分支简介

分支:是针对某类开发工作的一个提交结点序列,序列中最新的提交表示了该分支代码的最新版本。分支通常根据工作类别命名,例如: dev 、 test 分支;使用分支意味着你可以分离各个开发路线,然后在彼此不影响情况下同时向前推进。

当前分支: 一个仓库经常有多个分支。但在任何时刻,开发者只能在众多分支中的某一个分支上工作,这个处于工作状态的分支称为当前分支。 在 git 命令中,当前分支经常使用引用 HEAD 来表示。HEAD指向当前分支的当前所在的某个提交节点.

2.创建分支:第一次(根提交)会创建默认分支

`创建仓库

git init

查看分支

git branch -a

编写test.cpp源文件

#include

int main(){

std::cout<<"branch:dev"<

std::cout<<"version:1.0 "<

}

集结并提交一个节点:

3.创建并切换到新分支

 4.分支相关命令:

git branch -a //查看分支

git switch dev //切换分支

git branch test //创建新分支

git switch -c test //创建并切换新分支

git branch -d test //删除分支

5.切换分支和分支演进

`每次提交后HEAD随着分支一起向前移动

`HEAD在一次switch之后指向另一个分支: 如git切换回dev分支时,完成2个操作:

HEAD 引用指向 dev 分支指针用 dev 分支指针指向的最后一个提交对象的快照来恢复集结区和工作树。

6.切换到匿名分支

`假设当前的git仓库如图:

 

`我们有时需要在某个提交节点上创建新分支,可以切换到该提交节点,得到一个匿名分支。

`git switch -d ce9088 // 等价于 git checkout ce9088相当于创建了一个没有名字的匿名分支,指向 ce9088 。

`对于匿名分支,其 commit 工作与普通情况一样,只是没有命名的分支文件被更新,由 HEAD 指向最新的提交节点。 下图展示了匿名分支做了 1 次提交的情形:

此时在匿名分支上 git branch 创建新分支就可以引用到该匿名分支 

在匿名分支上做的提交在切换时会被丢弃

好文阅读

评论可见,请评论后查看内容,谢谢!!!
 您阅读本篇文章共花了: