git分支-分支工作流

本文介绍了Git中分支和合并的基本概念,探讨了长期运行分支(如develop、next和proposed)的使用,以及主题分支(如iss53和hotfix)的创建和管理。重点强调了Git对高效分支操作的支持,以及分支操作的本地性特点。
摘要由CSDN通过智能技术生成

分支工作流

现在已经掌握了分支和合并的基础知识,可以或应该如何使用它们?在本节中,我们将介绍一些常见的工作流程,这种轻量级的分支使得这些工作流程成为可能,因此我们可以决定是否要将它们纳入到自己的开发周期中。

长期运行的分支

由于Git使用简单的三路合并,因此在长时间内多次从一个分支合并到另一个分支通常很容易。这意味着可以拥有几个始终开放的分支,用于开发周期的不同阶段;可以定期将其中一些分支合并到其他分支中。

许多Git开发人员采用这种方法的工作流程,例如,在他们的主分支中只有完全稳定的代码 - 可能只有已经发布或将要发布的代码。他们有另一个名为develop或next的平行分支,从中进行工作或用于测试稳定性 - 它不一定总是稳定的,但每当它达到稳定状态时,就可以合并到主分支中。它用于在准备就绪时拉取主题分支(短期存在的分支,例如之前的iss53分支),以确保它们通过所有测试并且不引入错误。

实际上,我们谈论的是指针在正在进行的提交历史线上移动。稳定的分支位于提交历史线的下游,而最新的分支则位于历史的上游。

通常更容易将它们视为工作隔间,其中一组提交在完全测试通过后会升级到更稳定的隔间。

可以针对多个稳定级别继续执行此操作。一些较大的项目还可能有一个proposed或pu(提议更新)分支,其中包含可能尚未准备好进入下一个或主分支的集成分支。这个想法是,当前分支处于不同的稳定级别;当它们达到更稳定的水平时,它们将合并到它们上面的分支中。再次强调,拥有多个长期运行的分支并不是必需的,但通常很有帮助,特别是在处理非常大型或复杂的项目时。

主题分支

然而,在任何大小的项目中,主题分支都是有用的。主题分支是创建并用于单个特定功能或相关工作的短期存在的分支。这是以前可能从未在版本控制系统中执行过的操作,因为创建和合并分支通常成本过高。但在Git中,一天中创建、处理、合并和删除分支几次是很常见的。

在前面篇章中使用iss53和hotfix分支就看到了这一点。在这些分支上进行了一些提交,然后在将它们合并到主分支后直接删除了它们。这种技术允许快速而完全地进行上下文切换 - 因为工作被分隔成了各自的隔间,该分支中的所有更改都与该主题相关,因此在代码审查等过程中更容易看到发生了什么。可以将更改保留在那里数分钟、数天或数月,并在准备好时合并它们,而不管它们创建或工作的顺序如何。

考虑一个例子,在主分支上进行一些工作,然后切换分支到一个问题分支(iss91)上进行一些工作,然后再切换分支到另一个分支上尝试另一种处理相同事物的方式(iss91v2),然后回到主分支并在那里进行一段时间的工作,然后在那里分支出来做一些不确定是否是一个好主意的工作(dumbidea分支)。上述提交历史将看起来像这样:

现在,假设最喜欢第二个解决方案(iss91v2);并且向同事展示了dumbidea分支,结果证明它是个天才点子。可以丢弃原始的iss91分支(丢失提交C5和C6),并合并另外两个分支。操作历史看起来像这样:

重要的是要记住,在进行所有这些操作时,这些分支完全是本地的。在切分支和合并时,所有操作都仅在本地git存储库中进行 - 与服务器没有任何通信。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值