常用 Git 工作流,明确团队的开发流程

article/2025/8/20 1:21:50

借鉴的git工作流程模型:A successful Git branching model

5 个 Git 工作流,改善你的开发流程

下文的 Git 工作流是一些在开发团队中非常流行和最佳的工作流的示例。也有一些团队为预发布创建分支,并且该分支非常适合他们。所以你可以参考这些工作流,然后创建自己的 Git 工作流,更对还需结合自己的团队,规划适合自己的一个工作流。

1. 单分支 Git 工作流

最基本的 Git 工作流是只有一个分支 - master 分支的模式。开发人员直接提交 master 分支并使用它来部署到预发布和生产环境。

5 个 Git 工作流,改善你的开发流程

 

上图为基本的 Git 工作流,所有提交都直接添加到 master 分支。

通常不建议使用此工作流,除非你正在开发一个 side 项目并且希望快速开始。

由于只有一个分支,因此这里实际上没有任何流程。这样一来,你就可以轻松开始使用 Git。但是,使用此工作流时需要记住它的一些缺点:

  1. 在代码上进行协作将导致多种冲突。
  2. 生产环境出现 bug 的概率会大增。
  3. 维护干净的代码将更加困难。

2.并行功能 Git 分支工作流

当你有多个开发人员在同一个代码库上工作时,Git 功能分支工作流将成为必选项。

假设你有一个正在开发一项新功能的开发人员。另一个开发人员正在开发第二个功能。现在,如果两个开发人员都向同一个分支提交代码,这将使代码库陷入混乱,并产生大量冲突。

5 个 Git 工作流,改善你的开发流程

 

上图为具有功能分支的 Git 工作流模型。

为避免这种情况,两个开发人员可以分别从 master 分支创建两个单独的分支,并分别开发其负责的功能。完成功能后,他们可以将各自的分支合并到 master 分支,然后进行部署,而不必等待对方的功能开发完成。

使用此工作流的优点是,Git 功能分支工作流使你可以在代码上进行协作,而不必担心代码冲突。

3. 带有 Develop 分支的 Git 功能分支工作流

此工作流是开发团队中比较流行的工作流之一。它与 Git 功能分支工作流相似,但它的 develop 分支与 master 分支并行存在。

在此工作流中,master 分支始终代表生产环境的状态。每当团队想要部署代码到生产环境时,他们都会部署 master 分支。

Develop 分支代表针对下一版本的最新交付的代码。开发人员从 develop 分支创建新分支,并开发新功能。功能开发完毕后,将对其进行测试,与 develop 分支合并,在合并了其他功能分支的情况下使用 develop 分支的代码进行测试,然后与 master 分支合并。

5 个 Git 工作流,改善你的开发流程

 

上图为具有 develop 分支的 Git 功能分支工作流模型。

此工作流的优点是,它使团队能够一致地合并所有新功能,在预发布阶段对其进行测试并部署到生产环境中。尽管这种工作流让代码维护变得更加容易,但是对于某些团队来说,这样做可能会感到有些疲倦,因为频繁的 Git 操作可能会让你感到乏味。

4. Gitflow 工作流

Gitflow 工作流与我们之前讨论的工作流非常相似,我们将它们与其他两个分支( release 分支和 hot-fix 分支)结合使用。

4.1 Hot-Fix 分支

Hot-fix 分支是唯一一个从 master 分支创建的分支,并且直接合并到 master 分支而不是 develop 分支。仅在必须快速修复生产环境问题时使用。该分支的一个优点是,它使你可以快速修复并部署生产环境的问题,而无需中断其他人的工作流,也不必等待下一个发布周期。

将修复合并到 master 分支并进行部署后,应将其合并到 develop 和当前的 release 分支中。这样做是为了确保任何从 develop 分支创建新功能分支的人都具有最新代码。

4.2 Release 分支

在将所有准备发布的功能的代码成功合并到 develop 分支之后,就可以从 develop 分支创建 release 分支了。

Release 分支不包含新功能相关的代码。仅将与发布相关的代码添加到 release 分支。例如,与此版本相关的文档,错误修复和其他关联任务才能添加到此分支。

一旦将此分支与 master 分支合并并部署到生产环境后,它也将被合并回 develop 分支中,以便之后从 develop 分支创建新功能分支时,新的分支能够具有最新代码。

5 个 Git 工作流,改善你的开发流程

 

上图为具有 hot-fix 和 release 分支的 Gitflow 工作流模型

此工作流由 Vincent Driessen 首次发布并广受欢迎,已被具有预定发布周期的组织广泛使用。

由于 git-flow 是对 Git 的包装,因此你可以为当前代码库安装 git-flow。git-flow 非常简单,除了为你创建分支外,它不会更改代码库中的任何内容。

要在 Mac 机器上安装 ,请在终端中执行 brew install git-flow 。

要在 Windows 机器上安装,你需要 下载并安装 git-flow 。安装完成后,运行 git flow init 命令,就可以在项目中使用它了。

5. Git Fork 工作流

Fork 工作流在使用开源软件的团队中很流行。

该流程通常如下所示:

  1. 开发人员 fork 开源软件的官方代码库。在他们的帐户中创建此代码库的副本。
  2. 然后,开发人员将代码库从其账户克隆到本地系统。
  3. 官方代码库的远端源已添加到克隆到本地系统的代码库中。
  4. 开发人员创建一个新的功能分支,该分支将在其本地系统中创建,进行更改并提交。
  5. 这些更改以及分支将被推送到其帐户上开发人员的代码库副本。
  6. 从该新功能分支创建一个 pull request,提交到官方代码库。
  7. 官方代码库的维护者检查 pull request 中的修改并批准将这些修改合并到官方代码库中。

http://chatgpt.dhexx.cn/article/1pDJv8fO.shtml

相关文章

sourceTree中git工作流使用

1.初始化 2.构建feature分支 3.完成新功能 ####4.建立发布版本 完成发布

敏捷开发下的Git工作流应用实践

1 背景 在我们日常工作中,协同开发是最高效的一种方式,尤其是比较大的需求点以及功能,甚至是新项目的开发。这种情况下,Git的使用无可避免的也会出现一些问题。而在计算机技术发展到今天的同时,协同开发工具也不断进步…

刚进公司,不懂Git工作流的我瑟瑟发抖

前言 不懂git工作流,被辞退了! 之前在看到这句话的时候,我刚实习入职不久,瑟瑟发抖。好巧不巧,今天又看到了类似的文章讲git重要性的。 眼下,学校导师安排给我的课题组了一个新的工程项目,使用g…

团队Git实践方案-Git工作流

在团队协作中,好好地应用 Git可以为团队开发带来更高的效率收益, 也能保证整个工作流的完整推进。本文通过参考多篇优秀的Git实践文章总结而成,旨在为使用GIT标准分支开发流程的开发团队新人提供一份参考指南 一、一些好的习惯 1.1 提交 提…

面试 之 git工作流

目录: 一、git工作流 一、git工作流 1、git 版本管理基本概念 remote远程仓库 repository本地仓库 index索引区 index是新commit的写照;git add已经将数据传递到本地仓库了,在index中有个指向blob对象的索引记录;因此&#…

git工作流学习记录

git工作流学习地址 https://git-scm.com/book/zh/v1/Git-分支-分支的新建与合并 git多人参与开发项目时,需要用到git的工作流 一、创建好仓库 第一个分支是master,这个分支就作为项目最稳定的分支存在 然后是开发分支dev,这个分支是开发过…

用手画了11张图终于搞明白了Git工作流,我怀疑你用的是假 Git

号外号外!《死磕 Java 并发编程》系列连载中,大家可以关注一波: 「死磕 Java 并发编程05」阿里面试失败后,一气之下我图解了Java中18把锁 「死磕 Java 并发编程04」说说Java Atomic 原子类的实现原理 「死磕 Java 并发编程03」…

Git工作流(分支管理规范)

原文链接:https://nvie.com/posts/a-successful-git-branching-model/ Note of reflection (March 5, 2020) 反思记录(2020 年 3 月 5 日) This model was conceived in 2010, now more than 10 years ago, and not very long after Git itself came int…

Git工作流规范

Git基本原理及命令使用 Git简明教程 Git工作流使用方式选择 微型项目,使用集中式工作流。小型项目,功能分支工作流。中大型的互联网项目,不断需求迭代,一个版本接一个版本,参考并使用如下Git工作流。 Git工作流使用…

给大家推荐一套 git 工作流

一套规范的git工作流能让每个开发者都有自己的本地的完整项目副本。隔离的环境使得每个开发都的工作独立于项目的其它修改。 —— 他们可以在自己的本地仓库中添加提交,完全无视上游的开发,直到需要的时候。 一、分支划分及作用 master —— 主分支&…

Git工作流指南

说明: 个人在学习Git工作流的过程中,从原有的 SVN 模式很难完全理解Git的协作模式,直到有一天我看到了下面的文章,好多遗留在心中的困惑迎刃而解: 我们以使用SVN的工作流来使用Git有什么不妥?Git方便的bra…

《Git 系列》Git 工作流,你知道几种?

前言 Git 可能是对我们日常开发影响最大的软件了。 我们使用 Git,肯定要采用某个工作流来作为我们的开发流程。 不同的开发流程,有不同的适用场景, 没有银弹! Workflow - 工作流 Git flowGitHub flowTrunk-based development…

git的各种工作流

Git工作流可以理解为团队成员遵守的一种代码管理方案,在Git中有以下几种常见工作流: 集中式工作流功能开发工作流Gitflow工作流Forking工作流 1)集中式工作流 这种工作方式跟svn类似,它只有一个master分支,开发者会…

Git工作流(随笔)

目录 前言 一、工作流概述 1、概念 2、分类 二、集中式工作流 1、概述 2、介绍 3、操作过程 三、功能分支工作流 1、概述 2、介绍 3、操作过程 1)创建远程分支 2)删除远程分支 四、GitFlow工作流 1、概述 2、介绍 3、操作过程 五、Forki…

git工作流

目录 一、什么是gitFlow工作流二、操作1.(Feature branches)功能分支1.1创建功能分支1.2完成功能分支 2.(Release branches)发布分支3.(Hotfix branches)修复分支 三、例子1、创建develop分支2、张三和罗翔…

Flask+Vue+ElementUI开源框架推荐

项目介绍 一款 Python 语言基于Flask、Vue2.x、ElementUI、MySQL等框架精心打造的一款高性能的前后端分离架构敏捷开发框架,可快速搭建前后端分离后台管理系统,本着简化开发、提升开发效率的初衷,框架自研了一套个性化的图片上传组件&#x…

实用 | 整理了 34 个最火的 Python 开源框架

点击上方“小白学视觉”,选择加"星标"或“置顶” 重磅干货,第一时间送达本文转自|视觉算法 我们从近 10000 个 Python 开源框架中评价整理的 34 个最为好用的开源框架,它们细分可以分为 Python Toolkit、Web、Terminal、Code Edito…

Python开源框架简介

前言 今天给大家带来了12个在GitHub等开源网站中最受欢迎的Python开源框架。如果你正在学习python,那么这12个开源框架,千万别错过,这些框架包括事件I/O,OLAP,Web开发,高性能网络通信,测试&…

推荐 6 个 yyds 的开源 Python Web 框架

提到 Python 的 Web 框架,第一反应就是老三样,Django,Flask 和 Tornado。如果按流行度来排名的话,应该也是这个顺序。 但是今天重点介绍的框架是FastAPI,现在很多公司招聘的要求都需要会这个框架,非常值得…

22个受欢迎的Python不同类型开源框架

阅读网站源代码需要一定的编程基础,但有一些通用步骤可以帮助你理解: 了解编程语言:你需要了解网站源代码使用的编程语言,比如HTML、钢性铸铁和java描述语言。使用开发者工具:你可以使用浏览器 的开发者工具来查看网站…