【Git】Git Flow 工作原理

发布于:2024-10-24 编辑:匿名 来源:网络

1、Git Flow 工作模型原理 没有规则,但如果规则太多,你会感觉受到限制。当我们独自工作时,我们喜欢无拘无束,做任何我们想做的事情,没有任何人评判或测试我们。

久而久之,你就会变得盲目自大,以为一些事情只要增删改查,熟悉一下业务就可以搞定。但随着项目逐渐扩大,原本的灵活逐渐变成了混乱。

原本快速的迭代因为代码过于随意而被耽误,开发进度被耽误。如果掌握了一个标准,那么处理类似的问题就有章可循,也能很快融入到一个团队中。

另外,所谓规范可以说是比较好的做法。按照规范,该项目还可以稳步发展。

Git Flow 是关于如何使用 git 分支的规范或建议。根据Git Flow的推荐,我们将Git分支分为五个分支:master、develop、hotfix、release、feature。

各个分支负责不同的功能,正常开发时各司其职,所以会出现比较小的冲突率。利用这段时间减少冲突,少开会,多享受自己的生活,不是很好吗?一图胜千言:Git flow工作流master分支 master分支主分支是一个可以随时上线的稳定版本。

该分支只能从其他分支合并。一般来说,是从develop分支或者bugfix分支合并过来的。

文件不能直接在 master 分支上提交。由于是稳定版本,每次发布版本时都必须在该分支上添加标签。

开发分支是所有开发分支的父分支。所有开发分支都必须与开发断开。

开发完成后,必须合并到develop中。 hotfix 分支 hotfix 分支用于修复生产中的紧急错误。

由于develop分支还处于开发过程中,代码不稳定,无法直接应用到生产中。于是从master分支切下一个分支,修复完成后合并到master分支,再合并到develop。

发布分支 发布分支可以称为预发布版本。当我们认为开发版本的代码已经成熟时,我们就可以创建release分支。

在release分支上测试完毕后,将代码合并到master分支上进行开发。master分支是线上版本,合并到develop版本中是因为测试过程中可能会修改一些细节,所以这些优化也应该合并到最终版本和开发版本中。

特征分支 特征分支是最常用的分支。当我们收到新的开发功能时,应该在开发分支上切出一个功能分支。

用于完成新功能的开发。开发完成后,必须合并到develop分支中。

2. Git Flow工具的使用 基本上,各种git客户端软件都会支持Git Flow工作模型。在sourcetree上使用git flow工作模型非常流畅,体验非常好。

但为了全平台通用,了解原理,快速上手。我们来学习一下Git Flow的命令行操作。

git flow 是一个 git 使用规范。当然,也有相应的工具集和命令行命令供我们使用。

1、开始安装git flow 代码语言:javascript copybrew install git-flow-avh 初始化gitflow工具库 代码语言:javascriptcopygitflow init后,按照默认配置,直接按回车键继续即可。2.特征分支操作在特征分支中添加一个新的特征分支。

适用于需要开发新功能的场景。代码语言: javascript copy git flow feature start your roverliang/addlist 示例: 代码语言: javascript copy roverliang$ git flow feature start roverliang/addlist 切换到新分支 'feature/roverliang/addlist' 操作摘要:- 新建分支 ' feature/roverliang/addlist' 已基于 'develop' 创建 - 您现在位于分支 'feature/roverliang/addlist' 现在,开始提交您的功能。

完成后,使用: git flow feature finish roverliang/addlistroverliang$ gitbranchdevelop* feature/roverliang/addlist master 完成新功能。该操作执行以下过程:将addlist分支合并到develop,删除新的feature分支,然后切换回develop分支。

代码语言: javascript copy git flow feature finish roverliang/addlist 示例: 代码语言: javascript copy roverliang$ git flow feature finish roverliang/addlist切换到分支 'develop' 您的分支已更新到 'origin/develop'。已经是最新的.删除分支feature/roverliang/addlist (原为2e1b).摘要ctions:- 功能分支 'feature/roverliang/addlist' 已合并到 'develop' - 功能分支 'feature/roverliang/addlist' 已在本地删除 - 您现在位于分支 'develop'roverliang$ gitbranch* 开发 masterroverliang$获取某个发布的新功能的分支代码语言:javascript copy git flow feature track origin MYFEATURE3,发布分支操作准备发布版本代码语言:javascript copy git flow release start RELEASE [BASE] 可以选择提供一个[BASE]参数,即使用提交记录的 sha-1 哈希值来启动发布分支。

该提交记录的 sha-1 哈希值必须位于 'develop' 分支下示例: 代码语言: javascript copy roverliang$ git Branchdevelop feature/test* masterroverliang$ git log --pretty=oneline -32e1bfaefacfeaaac9a(HEAD -> master, origin/test2, origin/master, origin/feature/test, origin/develop 、feature/test、develop)删除一些内容2d22fd2dcab8aaa3beaaabb0重命名为:demo.txt -> test.txtfbfe52c3cdb10ec4ee5f82b9f7修改为:demo.txtroverliang$release发布版本代码语言:javascript复制git flow发布轨道RELEASE完成发布版本相当于执行以下操作:合并release分支到'master'分支与release标记分支名称合并release分支到'develop'删除release分支代码语言:javascript复制git flowrelease完成RELEASE4,bugfix分支运行紧急修复需求:紧急修复来自于这样的需求:生产版本处于意外状态,需要立即纠正。可能是master分支上某个TAG的生产版本需要修复。

启动紧急修复,打开hotfix分支代码语言:javascript copy git flow hotfix start VERSION [BASENAME] VERSION参数标记修订版本。可以从[BASENAME]开始,其中[BASENAME]是完成发布时填写的版本号,完成紧急修复。

当紧急修复分支完成后,代码会合并回develop和master分支。因此,master 分支被标记为修订版本。

【Git】Git Flow 工作原理

站长声明

版权声明:本文内容由互联网用户自发贡献,本站不拥有所有权,不承担相关法律责任。如果发现本站有涉嫌抄袭的内容,欢迎发送邮件 举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。

标签:

相关文章

  • 理想的MEGA,李想选择了流量最大的玩法

    理想的MEGA,李想选择了流量最大的玩法

    如果是这样设计,我就杀掉设计团队,自己跳楼。 大约五个月前,李想在社交平台上看到博主@SugarDesign制作的一系列理想的MEGA效果图后,愤怒地发表了评论。 ▲理想W01效果图来自微博@SugarDesign。 戏剧性的是,昨天上午,李想在社交平台上正式发布了理想MEGA的实车预热图。

    06-21

  • 宁德时代与腾讯云达成战略合作,共同攻克新能源质检世界级难题

    宁德时代与腾讯云达成战略合作,共同攻克新能源质检世界级难题

    7月15日,宁德时代新能源科技有限公司智能制造事业部与腾讯云签署战略合作协议。 双方宣布在人工智能领域在技术研发、成果转化、人才培养等方面开展深度合作。

    06-18

  • 传感器供应商“沃天科技”完成数千万元B轮融资

    传感器供应商“沃天科技”完成数千万元B轮融资

    据投资界1月9日消息,南京沃天科技股份有限公司(以下简称“沃天科技”)宣布完成数千万元B轮融资。 本轮融资由亿达资本推动,现有股东动平衡资本追加投资。 据悉,本轮融资金额将主要用于MEMS传感器芯片和物联网传感器的研发持续投入,以及优秀人才的招募和培养。 公开资料显

    06-17

  • 【融资24小时】2023年3月17日投融资事件汇总及明细

    【融资24小时】2023年3月17日投融资事件汇总及明细

    今日国内市场共发生15起投资披露事件,其中先进制造业10起(宸宇富基、乐普纳电、华晟新能源、利普斯、昆仑芯、慧锐光电、瀚强科技、探家科技、芯翼资讯、智汇芯屏)、游戏1个(库洛游戏)、社交网络1个(游戏党)、汽车交通1个案例(大川大川电机) )、教育案例1例(中科启

    06-18

  • 华虹半导体:拟设立12英寸晶圆制造合资公司

    华虹半导体:拟设立12英寸晶圆制造合资公司

    华虹半导体 华虹半导体1月18日公告,公司旗下全资子公司华虹宏力获国家集成电路产业基金二期投资2018年1月18日,无锡市主体与无锡市主体签订合资协议,有条件同意通过合资公司设立合资公司,分别以8亿美元、11亿美元、11亿美元和8.04亿美元现金向无锡市实体投资。 分别成立合

    06-06

  • 港交所:主板上市申请人盈利要求提高60%,自2022年1月1日起生效

    港交所:主板上市申请人盈利要求提高60%,自2022年1月1日起生效

    今日联交所发布咨询结论称,在仔细考虑所有回应后,联交所已修订 根据咨询文件中的建议,采取了以下做法: (i) 将利润要求提高 60%,并修订利润分配要求 (; (ii) 修订后的利润增长幅度的实施日期为 1 月 1 日, 2020年,据悉,盈利规定是三大财务资格测试之一,也是联交所用来

    06-18

  • 联想再次回应“前高管常程退出小米”:常程不承认其签名真实性

    联想再次回应“前高管常程退出小米”:常程不承认其签名真实性

    9月17日上头条,关于“前联想手机业务负责人常程违反竞业禁止义务”的“争议”,??联想集团再次回应称,竞业禁止协议已确认由其签署。 联想表示,该案已在北京市海淀区劳动人事争议仲裁委员会多次开庭审理。 “由于常程不承认其签名的真实性,仲裁委员会委托法院科技鉴定所对

    06-17

  • 三个1985年后出生的人刚刚敲响了美股IPO的钟声,禾赛科技市值160亿

    三个1985年后出生的人刚刚敲响了美股IPO的钟声,禾赛科技市值160亿

    期待已久的美股IPO钟声又回来了。 投资天地-天天IPO消息,今晚(北京时间2月9日),激光雷达公司禾赛科技正式登陆纳斯达克,成为国内激光雷达第一股。 发行价格为每股19美元,募资规模达1.9亿美元。 以此计算,市值为24亿美元(约合人民币1亿元)。 这是近一年半以来中国企业

    06-17

  • 10GW分布式光伏!美国纽约州制定了2023年新能源装机目标

    10GW分布式光伏!美国纽约州制定了2023年新能源装机目标

    研究表明,无论美国国会是否通过“重建更好”法案,纽约州部署的光伏计划都将取得重大进展。 这是分布式光伏部署如何帮助实现该州可持续发展目标的一个很好的例子。 近年来,为了满足能源转型的需求,纽约州制定了到2020年部署分布式光伏装机容量10GW的目标,该州还制定了到2

    06-08

  • 闵万里出手,北风资本投资天创时尚1.86亿元

    闵万里出手,北风资本投资天创时尚1.86亿元

    投资行业消息,3月4日晚,广州天创时尚鞋业有限公司(以下简称“天创时尚”)发布公告公告称,3月3日,北峰资本通过股权转让协议引入为长期合作伙伴。 双方将通过股权转让的方式达成合作。 据悉,北方资本本次交易合计出资1.86亿元,交易完成后将持有天创时尚5%的股份。 天创

    06-17

  • 无码平台「清流」获数千万元A+轮融资

    无码平台「清流」获数千万元A+轮融资

    无码平台「清流」完成数千万元A+轮融资,腾讯领投、老股东跟投源代码资本。 本轮融资后,清流将进一步加速拓展市场布局,加强产品和技术研发创新,提升客户服务能力和专业水准,为客户提供更安全、更稳定的技术支持。 听,中小企业反馈平台。 倾听用户需求,倾听创业者声音,

    06-18

  • 荣达黄金正筹划在主板IPO,四川省地矿勘查开发局发布实际控制人

    荣达黄金正筹划在主板IPO,四川省地矿勘查开发局发布实际控制人

    容大黄金拟主板IPO信息。 公司法定代表人:杨学军、实际控制人:四川省地质矿产勘查开发局,发起人:中信建投,指引备案日期:4月6日。

    06-18