您当前的位置:首页 > 电脑百科 > 软件技术 > 操作系统 > linux百科

大项目的代码管理机制

时间:2022-06-06 11:47:32  来源:  作者:5分钟IT入门

我们之前已经熟悉了git工具(详情请查看:5分钟熟悉git工具)
如果是项目是初创期,研发团队成员只有几个人,那么git用不好,对项目影响也不会太大。
如果项目已经初具规模,研发团队在数十人以上,那么项目代码管理,就是一门非常具有艺术性的工作,处理不好将会带来灾难性的后果。
今天我们通过一些工作需求场景及其对应的解决方案,来快速熟悉掌握在大项目大团队中如何通过git进行有效的代码管理。相信聪明的你,看完一定会有收获!


【正文开始】


初创团队的工作流程,一般是:
1)业务功能A开发完了,提交测试部门进行测试
2)测试部门测试完了,提交到运维部门进行生产环境部署


看上去工作非常顺利,但项目初具规模后,以下新问题会陆续产生:
1)测试部门尚未完成功能A测试,产品就下发了功能B的研发任务;
2)研发人员继续在master分支上研发功能B,测试部突然告知功能A有缺陷需要整改;
3)有些时候,测试部工作出现问题,导致错误没有被发现,而被提交到了生产环境
.....


可能已经有小伙伴感觉需要开分支进行管理了,但开第2个分支就能解决上面的新问题吗?答案显然是否定的。


作者借助自己多年的项目管理经验,在这里介绍一下分支的设计艺术,有问题或建议的小伙伴,可以在评论区留言互动。


对于一个足够复杂的项目,我们最少需要 5个分支进行管理,各分支名称及其适用场景(要解决的问题)说明如下:


1)master 分支
这是主分支,新功能需求的开发工作都需要在此分支上进行;


2)test 分支
这是测试部门使用的分支,当master分支上某个阶段性的开发工作结束,合并到test分支进行提测。


3)release分支
这是生产环境使用的分支,当测试部门测试通过后,需要将test合并到release。


4)master_bug 分支
当release 发布以后,需要立即检出 master_bug 分支
如果生产环境需要紧急消缺,则直接让研发人员从 master_bug上进行修改


5)test_bug 分支
当release 发布以后,需要立即检出 test_bug 分支
master_bug修改完毕后合并到 test_bug,最终由test_bug合并到release完成生产环境的缺陷修复

 

两个问题答疑:

 


1、问: 为什么不从master_bug 合并到 test呢?
答:因为当项目足够复杂时,test_bug(release) 跟 test 功能代码已经差的很多了,强行合并对relase会影响较大,风险较高。

2、问:为什么用这么多分支管理?用tag标签管理不行么?

答:真实的项目生产环境部署流程,一般都要经历研发部,测试部,运维部等多人协作,跨部门协作的效率过来人都懂,经历一番寒彻骨之后,得出的结论就是要想效率高,人参与的越少越好。现在业界基本都是在使用自动化运维工具(比如jenkins)进行相关工作,而对于这些工具,严格的branch分支名称,相对于随意性较强的tag标签,更容易配置。



Tags:代码管理   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,不构成投资建议。投资者据此操作,风险自担。如有任何标注错误或版权侵犯请与我们联系,我们将及时更正、删除。
▌相关推荐
大厂都在用的Git代码管理规范
分支命名master 分支master 为主分支,也是用于部署生产环境的分支,需要确保master分支稳定性。master 分支一般由 release 以及 hotfix 分支合并,任何时间都不能直接修改代码。...【详细内容】
2023-09-04  Search: 代码管理  点击:(304)  评论:(0)  加入收藏
大项目的代码管理机制
我们之前已经熟悉了git工具(详情请查看:5分钟熟悉git工具) 如果是项目是初创期,研发团队成员只有几个人,那么git用不好,对项目影响也不会太大。 如果项目已经初具规模,研发团队在数...【详细内容】
2022-06-06  Search: 代码管理  点击:(222)  评论:(0)  加入收藏
如何让代码管理更简单高效?
目前好多开发项目,代码不做版本控制,代码库混乱,那么如何让代码管理更简单高效? GitLab是基于web的Git仓库,GitLab的优点:1、允许免费设置仓库权限;2、允许用户选择分享一个project...【详细内容】
2022-05-10  Search: 代码管理  点击:(412)  评论:(0)  加入收藏
企业如何防止源码泄露?分享一种JavaScript源代码管理方法
产品源代码,对于研发型企业来说,十分重要。源码是核心竞争力,是企业的基础命脉。现实中,源码泄漏的情况不少,有的是因为意外不慎造成、有的是因为企业员工有意窃取。源码一旦泄漏...【详细内容】
2022-05-06  Search: 代码管理  点击:(119)  评论:(0)  加入收藏
▌简易百科推荐
微软 Win11 Linux 子系统(WSL)发布 2.2.2 版本
IT之家 4 月 8 日消息,微软近日更新 Windows Subsystem for Linux(WSL),最新 2.2.2 版本中带来了诸多改进,重点更新了 nft 规则,可以让 IPv6 流量通过 Linux 容器。图源: dev.to,AI...【详细内容】
2024-04-08    IT之家  Tags:Linux   点击:(6)  评论:(0)  加入收藏
从原理到实践:深入探索Linux安全机制
Linux 是一种开源的类Unix操作系统内核,由Linus Torvalds在1991年首次发布,其后又衍生出许多不同的发行版(如Ubuntu、Debian、CentOS等)。前言本文将从用户和权限管理、文件系统...【详细内容】
2024-03-27  凡夫编程  微信公众号  Tags:Linux安全   点击:(16)  评论:(0)  加入收藏
在Linux系统中,如何处理内存管理和优化的问题?
本文对 Linux 内存管理和优化的一些高级技巧的详细介绍,通过高级的内存管理技巧,可以帮助系统管理员和开发人员更好地优化 Linux 系统的内存使用情况,提高系统性能和稳定性。在...【详细内容】
2024-03-26  编程技术汇  微信公众号  Tags:Linux   点击:(10)  评论:(0)  加入收藏
Linux 6.9-rc1 内核发布:AMD P-State 首选核心、BH 工作队列
IT之家 3 月 25 日消息,Linus Torvalds 宣布,Linux 6.9 内核的首个 RC(候选发布)版 Linux 6.9-rc1 发布。▲ Linux 6.9-rc1Linus 表示,Linux 内核 6.9 看起来是一个“相当正常”...【详细内容】
2024-03-25    IT之家  Tags:Linux   点击:(12)  评论:(0)  加入收藏
轻松实现Centos系统的软件包安装管理:yum指令实战详解
yum 是一种用于在 CentOS、Red Hat Enterprise Linux (RHEL) 等基于 RPM 的 Linux 发行版上安装、更新和管理软件包的命令行工具。它可以自动解决软件包依赖关系,自动下载并...【详细内容】
2024-02-27  凡夫贬夫  微信公众号  Tags:Centos   点击:(54)  评论:(0)  加入收藏
Win + Ubuntu 缝合怪:第三方开发者推出“Wubuntu”Linux 发行版
IT之家 2 月 26 日消息,一位第三方开发者推出了一款名为“Wubuntu”的缝合怪 Linux 发行版,系统本身基于 Ubuntu,但界面为微软 Windows 11 风格,甚至存在微软 Windows 徽标。据...【详细内容】
2024-02-27    IT之家  Tags:Ubuntu   点击:(50)  评论:(0)  加入收藏
Linux中磁盘和文件系统工作原理解析
在Linux系统中,一切皆文件的概念意味着所有的资源,包括普通文件、目录以及设备文件等,都以文件的形式存在。这种统一的文件系统管理方式使得Linux系统具有高度的灵活性和可扩展...【详细内容】
2024-02-20  王建立    Tags:Linux   点击:(53)  评论:(0)  加入收藏
Linux子系统概览
inux操作系统是一个模块化的系统,由多个子系统组成。这些子系统协同工作,使Linux能够执行各种任务。了解Linux的子系统有助于更好地理解整个操作系统的运作机制。以下是Linux...【详细内容】
2024-02-01    简易百科  Tags:Linux   点击:(77)  评论:(0)  加入收藏
Linux内核:系统之魂与交互之源
内核,作为任何基于Linux的操作系统的心脏,扮演着至关重要的角色。它不仅是计算机系统软件与硬件之间的桥梁,更是确保系统稳定、高效运行的关键。内核提供了一系列核心功能,为上...【详细内容】
2024-02-01  松鼠宝贝    Tags:Linux内核   点击:(69)  评论:(0)  加入收藏
如何确保Linux进程稳定与持久
在Linux系统中,进程的稳定性与持久性对于维持系统的持续运行至关重要。然而,由于各种原因,进程可能会面临崩溃或系统重启的情况。为了确保关键进程能够持续运行,我们必须采取一...【详细内容】
2024-01-19  松鼠宝贝    Tags:Linux进程   点击:(85)  评论:(0)  加入收藏
站内最新
站内热门
站内头条