【代码管理,从小抓起】(二)

什么是分支?

廖雪峰老师的例子很好,我决定直接引用过来:

分支,就是科幻电影里面的平行宇宙,当你正在电脑前努力学习Git的时候,另一个你正在另一个平行宇宙里努力学习SVN。

分支在实际中有什么用呢?

假设你准备开发一个新功能,但是需要两周才能完成,第一周你写了50%的代码,如果立刻提交,由于代码还没写完,不完整的代码库会导致别人不能干活了。如果等代码全部写完再一次提交,又存在丢失每天进度的巨大风险。

现在有了分支,就不用怕了。

你创建了一个属于你自己的分支,别人看不到,还继续在原来的分支上正常工作,而你在自己的分支上干活,想提交就提交,直到开发完毕后,再一次性合并到原来的分支上,这样,既安全,又不影响别人工作。

分支操作

1、创建分支

使用命令:git branch <branchname>,其功能只涉及到新建一个分支。

2、切换分支

使用命令:git switch <branchname>

另一种方法:

git checkout -b <branchname>   # 在创建分支的同时,切换到对应分支
3、合并分支
使用命令:git merge <repo_to_be_merged>

示例代码: 假设现存2个分支,分别为bugFixmain,且当前指针指向bugFix分支

git switch main    # 将指针移动到main
git merge bugFix
使用命令:git rebase <repo_name>

功能概述:git rebase是基于一个分支,创建下一个时间线。

示例代码:假设当前情况下,有2个分支,分别为分别为bugFixmain,且当前指针指向bugFix分支,要求建立如下的分支,

git checkout -b bugFix
git commit 
git switch main
git commit
git switch bugFix
git rebase main        # 在main的基础上,向前延伸,并将main和bugFix 2条分支的代码合并

额外

关于checkout命令

在 Git 2.23 版本中,引入了一个名为 git switch 的新命令,最终会取代 git checkout,因为 checkout 作为单个命令有点超载(它承载了很多独立的功能)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值