当前位置:网站首页>一切的源头,代码分支策略的选择
一切的源头,代码分支策略的选择
2022-07-26 02:55:00 【壹小俊】
记得大概是一年前吧,我与好友老吴喝茶聊天时,讨论到:高效的持续交付体系,必定需要一个合适的代码分支策略。
我告诉老吴:“采用不同的代码分支策略,意味着实施不同的代码集成与上线流程,这会影响整个研发团队每日的协作方式,因此研发团队通常会很认真地选择自己的策略。"
老吴是一名有多年开发经验的资深架构师,当时正好要接手一个框架团队,从个人贡献者向团队管理者转型。他个人对代码管理工具可谓熟之又熟,甚至连“老古董”的CVS都可以跟你聊半天。但他在为团队制定代码分支管理策略时,还是慎之又慎,足见其重要性。
最后我们发现,要确定选用哪种代码分支管理策略,需要先假设几个问题,这几个问题有了答案,也就代表你找到了适合的方向。你需要思考的几个问题如下:
1.Google和Facebook这两个互联网大咖都在用主干开发(Trunk Based Development简称TBD),我们是不是也参照它俩,采用主干开发分支策略?
2.用Google搜索一下,会发现有个排名很靠前的分支策略,叫“Asuccessful Git branching model”(简称GitFlow),它真的好用吗?团队可以直接套用吗?
3.GitHub和GitLab这两个当下最流行的代码管理平台,各自推出了GitHubFlow和GitLabFlow,它们有什么区别?适合我使用吗?
4.像阿里、携程和美团点评这样国内知名的互联网公司,都在用什么样的分支策略?
今天,我想再沿着当时的思考路径,和你一起回顾和总结一下,希望能够带你全面了解代码分支策略,帮助你做出合适的选择。
谈谈主干开发(TBD)
主干开发是一
边栏推荐
- (9) Attribute introspection
- Chapter 3 business function development (delete clues)
- Study notes of pytorch deep learning practice: convolutional neural network (Advanced)
- GAMES101复习:光栅化
- Jenkins' study notes are detailed
- Have you ever seen this kind of dynamic programming -- the stock problem of state machine dynamic programming (Part 1)
- Literature speed reading | in the face of danger, anxious people run faster?
- Eslint common error reporting set
- [steering wheel] use the 60 + shortcut keys of idea to share with you, in order to improve efficiency (live template & postfix completion)
- JS get the time composition array of two time periods
猜你喜欢

AMD64 (x86_64) architecture ABI document:

FPGA_Vivado软件初次使用流程_超详细

Stack Title: the longest absolute path of a file

Have you ever seen this kind of dynamic programming -- the stock problem of state machine dynamic programming (Part 1)

【方向盘】使用IDEA的60+个快捷键分享给你,权为了提效(Live Template&Postfix Completion篇)

How to effectively prevent others from wearing the homepage snapshot of the website

JS get the time composition array of two time periods

Simply use MySQL index
![[steering wheel] use the 60 + shortcut keys of idea to share with you, in order to improve efficiency (live template & postfix completion)](/img/b8/56c4541602c5a6e787e2455f80febd.png)
[steering wheel] use the 60 + shortcut keys of idea to share with you, in order to improve efficiency (live template & postfix completion)

(pc+wap) dream weaving template vegetable and fruit websites
随机推荐
Code dynamically controls textview to move right (not XML)
assert _Aligns
从各大APP年度报告看用户画像——标签,比你更懂你自己
MySQL tutorial: MySQL database learning classic (from getting started to mastering)
Image recognition (VII) | what is the pooling layer? What's the effect?
Jenkins' study notes are detailed
[steering wheel] use the 60 + shortcut keys of idea to share with you, in order to improve efficiency (live template & postfix completion)
assert _ Aligns
Extended Physics-InformedNeural Networks论文详解
HLS Experiment 1 -- multiplier
18. Delete the penultimate node of the linked list
Annotation development management third-party beans
My friend took 25koffer as soon as he learned automation test. When will my function test end?
26 points that must be paid attention to for stability test
(九)属性自省
这种动态规划你见过吗——状态机动态规划之股票问题(上)
图像识别(六)| 激活函数
Arthas download and startup
U++ common type conversion and common forms and proxies of lambda
(pc+wap) dream weaving template vegetable and fruit websites