当前位置:   article > 正文

git:分支切换_git 切换分支

git 切换分支

1.分支简介

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

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

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

`创建仓库

git init

查看分支

git branch -a

编写test.cpp源文件

  1. #include <iostream>
  2. int main(){
  3. std::cout<<"branch:dev"<<std::endl;
  4. std::cout<<"version:1.0 "<<std::endl;
  5. }

集结并提交一个节点:

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个操作:

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

6.切换到匿名分支

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

 

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

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

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

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

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

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/357987
推荐阅读
相关标签
  

闽ICP备14008679号