学习git(三): 理解分支以及的基本流程

每天对自己多问几个为什么,总是有着想象不到的收获。 一个菜鸟小白的成长之路(copyer)


每次提交,Git都把它们串成一条时间线,这条时间线就是一个分支。截止到目前,只有一条时间线,在Git里,这个分支叫主分支,即master分支。HEAD严格来说不是指向提交,而是指向mastermaster才是指向提交的,所以,HEAD指向的就是当前分支。

推荐博客:https://www.cnblogs.com/matengfei123/p/8252128.html


创建dev分支和bug分支

  • 查看master分支上的版本(存在两个版本)

    在这里插入图片描述


  • 查看当前的分支(master)

    git branch
    

    在这里插入图片描述


  • 开发一个新的功能,创建一个dev分支

    git branch dev
    
    //创建一个dev分支
    

    在这里插入图片描述


  • 切换到dev分支,写新功能的代码

    git checkout dev
    
    //进行性一系列的代码提交流程
    
    git commit -m 'v3版本'
    git log
    

    在这里插入图片描述

    看到了dev分支上,是存在 v3版本的,但是在master分支上是不存在v3版本的


  • v2版本中遇见一个bug,需要停止新功能的开发,去修复bug。那么就需要切换到主分支,然后创建bug分支

    git checkout master     //切换到主分支
    git branch bug          //在主分支上创建一个bug分支
    git checkout bug        //切换到bug分支,进行修复bug
    

    在这里插入图片描述


  • 合并分支(在主分支上(master) 合并 bug分支)

    git checkout master    //切换到主分支
    git merge bug          //合并bug分支上的v2版本
    

    在这里插入图片描述

    然后在查看master分支上的版本

    在这里插入图片描述


  • 删除bug分支

    git branch -d bug
    

  • 接下来,又是去开发新的功能在dev分支上,开发剩余的模块

    git checkout dev
    //开发剩余的工作量
    
    git commit -m 'v3新功能开发完毕'
    git checkout master
    git merge dev        //这下会发现冲突
    

    在这里插入图片描述

    原因:

    • 在master的主分支上,最新的版本已经是v2版本的bug修复

    • dev分支创建的时候,是在v2版本的基础上创建的,所以不是主分支最新的代码

    • 所以合并的时候,如果有一行代码,跟主分支不一样就会产出冲突

    • 解决冲突:就是查看提示,然后在编辑器中删除有冲突的代码,保留主分支上的 代码

      在这里插入图片描述

    vscode就有这很好的提示,根据需求操作即可。

    选择第二个就OK了。


命令总结

git branch    //查看分支
git branch dev   //创建分支
git checkout dev  //切换到dev分支
git merge dev    //切换到主分支,然后在合并dev分支
git branch -b dev  //删除dev分支
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值