5种Git工作流程让您交付更棒的代码(使用git提交代码的过程是怎样的)

根据项目类型、公司规模、团队偏好和许多其他因素,每个团队都有自己的工作流程。 团队越大,管理就越困难:问题相冲突变得更加普遍,推迟发布日期,工作任务优先权不断变化,项目工作列表无穷无尽。

第一步就是使用Git,它能解决这些一直困扰着我们的问题。以下是您可以在业务中使用的5种最流行的Git工作流程:

一、基本流程

种Git工作流程让您交付更棒的代码(使用git提交代码的过程是怎样的)"

执行方法很简单:设一个存储仓。 每个程序员都可以从代码存储仓下载源码,然后在本地处理开发代码,创建带有更改的提交信息,并将其推送到这个中心存储仓,以供其他程序员在参与、提取、开发和使用。

二、功能分支

种Git工作流程让您交付更棒的代码(使用git提交代码的过程是怎样的)"

基本工作流程非常适合开发简单的网站。 但是,一旦两个程序员开始在一个项目中开发两个不同的功能,问题就会慢慢显露出来。

假设其中一位程序员完成了他们的功能并想要发布。 由于第二个功能还没有完成,那这个时候只能等另一个。 此时发布可能会导致混乱。

这就是分支Git的核心特性派上用场的地方。 分支是项目开发的独立“轨道”。 对于每个新功能,都应该创建一个新分支,在此开发和测试新功能。 功能准备就绪后,可以将分支合并到主分支(Master/Main),以便将其发布到正式运营的服务器。

功能分支与合并请求

功能分支工作流程预设团队中的所有开发人员都具有相同的技术水平与职位。 然而,在更大的团队中,公司中总是存在某种形式的等级制度。

在这种情况下,您可以使用合并请求和推送权限,允许您限制推送到存储库中的选定分支并保持对代码的完全控制管理。

在将分支合并到主分支之前,需要对其进行验证和检查是否出错。 初级程序员可以创建合并请求并将其分配给其中一位高级程序员,这样他们就可以查看代码并发表评论。 如果一切正常,则接受请求合并分支。

三、Gitflow

种Git工作流程让您交付更棒的代码(使用git提交代码的过程是怎样的)"

项目越大您就越需要控制发布的内容与时间。 项目需要更多的单元与集成测试,这样运行一次至少几小时。 但您没必要在开发功能的分支上运行此类测试。

因此,可以通过Gitflow解决,这是由Vincent Driessen于2010年提出且阐述的Git开发工作流程。

工作流使用两个并行长时间运行的分支:

  • 主分支

仅用于项目发布

  • 开发分支

创建自主分支,为下一个版本准备的已全部完成开发且功能稳定的分支所在位置

当您开始开发新功能时,从开发分支中创建一个新功能分支。根据需要同时创建多个功能分支。 完成开发并测试功能后,将代码合并回开发分支。然后,当发布项目时,将新功能与新发布分支上的开发分支隔离开来。 确保该版本经过良好的、稳定的测试。

此时根据项目的特点,向公众发布软件的RC版本也许是一个不错的主意。当版本稳定并且所有问题都解决后,将您的发布分支合并回主分支并部署到正式运营中!

四、分叉流程

就像在公海上一样,在开源中一切都取决于船长。在软件方面,存储仓所有者决定谁可以推送到存储仓。尽管开源的理念是每个人都可以为项目做出贡献,但我们想一想,要是老莱(Linus Torvalds)允许任何人无限权限地修改Linux项目存储仓的代码,会不会很好玩?

这个问题由分叉解决:任何时候开发人员想要更改开源项目中的某些内容,他们都不会直接在项目的存储仓上工作。相反,直接通过分叉并有效地创建整个存储仓副本。然后,程序员可以自由地以他们的喜好开发新功能。值得一提的是,分叉也为创建针对特定应用程序调整的某些组件自定义版本提供了无限可能性。程序员或公司可以分叉一个存储仓并将代码带到一个全新的方向,当然,项目创始人可能会有异议。

然而,在大多数情况下,当工作完成时,会创建一个拉取请求,将程序员引入其分支的更改与分支存储仓状态进行比较。在那里,社区和项目所有者可以审查、讨论和测试更改。最后的决定权仍掌握在该项目的船长及其副手之中。

五、您自己定义的Git流程

在本文描述的Git工作流程只是一些示例。 Git最大的特点是您可以选择现有的工作流程并轻松地使其达到您的需求。 例如,我在Buddy(一个DevOps自动化平台)中使用经过修改的Gitflow和额外的暂存分支为我带来了更高效的开发效率。

最后,我求求那些企业所有者,技术出身也好、暴发户也罢(当然土豪自便),从今天开始用Git开发您的项目吧!别到了被删库跑路才来哭鼻子!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

(0)
上一篇 2022年8月24日 上午10:15
下一篇 2022年8月24日 上午10:29

相关推荐

  • 河南项目管理系统报价

    河南项目管理系统报价:一个项目成功的关键因素 河南项目管理系统报价是一个非常重要的因素,对于任何组织来说都是至关重要的。一个高效的河南项目管理系统可以帮助企业更好地管理项目,提高生…

    科研百科 2024年12月12日
    0
  • 合同管理目录范本

    合同管理目录范本 合同管理是企业管理中的重要组成部分,能够帮助企业有效地管理合同,避免合同陷阱,保障企业利益。以下是一份合同管理目录范本,供企业参考。 一、合同管理流程 1. 合同…

    科研百科 2025年1月5日
    0
  • 关于成立党员突击队的职责是什么

    党员突击队是中国共产党党员在执行任务过程中,为了完成任务而成立的临时组织。其职责是充分发挥党员的先锋模范作用,团结带领广大人民群众,快速高效地完成任务。 党员突击队的职责主要包括以…

    科研百科 2024年12月1日
    12
  • 从实现原理谈谈低代码(从实现原理谈谈低代码的问题)

    我们在低代码领域探索了很多年,从2015 开始研发低代码前端渲染(amis),从 2018 年开研发后端低代码数据模型,发布了爱速搭低代码平台,这些年调研过了几乎所有市面上的相关技…

    科研百科 2024年5月13日
    66
  • 八张清软件

    八张清软件是一款功能强大且易于使用的软件,可以帮助用户快速清理计算机内存。这款软件的主要功能是清理临时文件、历史记录、缓存文件、垃圾邮件、程序运行时产生的临时文件以及系统日志等。使…

    科研百科 2024年10月16日
    3
  • 我市2023年科研助理岗位招录计划工作启动(2021年科研助理招聘)

    来源:【新乡日报】 新乡网讯(新乡日报全媒体记者 赵改荣)为充分发挥政策性岗位吸纳高校毕业生就业,市科技局按照省科技厅的部署要求,5月13日,我市2023年科研助理岗位招录计划工作…

    科研百科 2024年4月18日
    64
  • 施工项目进度管理

    施工项目进度管理 施工项目进度管理是指在施工项目中,通过对项目进度的控制和规划,确保项目按时完成,达到预期的目标。施工项目进度管理对于保证施工质量和工程进度至关重要,是施工项目成功…

    科研百科 2025年1月9日
    0
  • project项目管理软件

    Project: 项目管理的利器 Project是一种广泛使用的项目管理工具,可以帮助项目经理有效地规划和管理项目。Project提供了广泛的功能和工具,包括进度管理、成本预算、风…

    科研百科 2024年7月21日
    32
  • crm管理软件下载

    crm管理软件下载:企业数字化的利器 随着数字化时代的到来,企业面临着越来越多的挑战和机遇。为了更好地管理客户关系、销售和营销等方面,企业需要一款专业的crm管理软件。 crm管理…

    科研百科 2024年9月14日
    29
  • 这30项土木工程代表中国最高水平!长沙3项工程在列(长沙土木工程学校排名)

    原标题:这些土木工程代表中国最高水平 名单请收好 长沙晚报掌上长沙4月12日讯据央视新闻消息(记者 杨潇)今天,第十六届中国土木工程詹天佑奖获奖名单公布,包括建筑、桥梁、铁道、隧道…

    科研百科 2024年4月13日
    71