前言

Git是一种强大的分布式版本控制系统,在实际项目开发中使用Git进行分支管理是非常常见的做法,因为它可以帮助团队高效的协作和管理项目的不同版本,今天我们来讲讲在实际项目中最常用的Git分支管理策略Git Flow

常见的Git分支管理策略

Git Flow:

Git Flow是一种非常流行的分支管理策略,由Vincent Driessen提出。Git Flow的核心思想是保持主分支稳定,通过使用不同类型的分支来隔离不同类型的工作。

GitHub Flow:

GitHub Flow是由GitHub提出的一种更简化的分支管理策略。它强调持续交付和快速部署。

GitLab Flow:

GitLab Flow是GitLab推荐的一种分支管理策略,它结合了Git Flow和GitHub Flow的一些特点。

Trunk Based Development

Trunk-Based Development是一种极端简化的分支管理策略,它强调在单一的主分支(通常称为trunk或mainline)上进行所有的开发工作。

Git开发、发布、缺陷分离模型介绍

在一些流程完善的公司往往都会有着自己一套比较完善的Git分支管理模型来保障开发和生成环境的代码稳定性,而Git开发、发布、缺陷分离模型是一种流行且适用于大多数团队的Git分支管理模型,它支持master/develop/feature/release/hotfix类型分支。使用这种分支管理模型可以有效地隔离开发、发布和缺陷修复工作,提高代码的质量和稳定性。同时,也可以更好地协作和进行版本管理。如下是一张详细的master/develop/feature/release/hotfix类型分支管理图:

对应分支的作用

master分支

master分支是主分支,包含了已经发布到生产环境的稳定,可靠版本的代码。一般情况下,master分支应该只用于发布新版本,而不应该直接修改或提交新的功能。

develop分支

develop分支是开发分支,包含了当前正在进行的所有功能和任务。所有新功能开发、改进、优化等都应该从此分支开始,并最终合并回此分支。

feature分支

feature分支是从develop分支创建的分支,通常用于开发新功能。每个新功能都应该从develop分支开始,并在一个独立的feature分支上进行开发工作。一旦新功能得到完全实现、测试并且可靠,该分支就会被合并回develop分支。

release分支

release分支是从develop分支创建的分支,通常用于为即将发布的版本做准备工作。在此分支上可以进行最终的测试、修复bug、检查文档等操作,以确保发布版本的质量。一旦准备工作完成并且得到完全测试,该分支就会被合并回master分支,并作为新的发布版本。并将该分支合并回develop分支,以便后续的开发工作。

hotfix分支

hotfix分支是从master分支创建的分支,用于在生产环境中紧急修复问题。修复完毕后,该分支将会被合并回master和develop分支。

Git快速入门教程

Git可视化管理工具

参考文章

https://nvie.com/posts/a-successful-git-branching-model/

实际项目中如何使用Git做分支管理的更多相关文章

  1. [转]实际项目中如何使用Git做分支管理 (A successful Git branching model)

    来自 https://nvie.com/posts/a-successful-git-branching-model/ In this post I present the development m ...

  2. git的介绍、git的功能特性、git工作流程、git 过滤文件、git多分支管理、远程仓库、把路飞项目传到远程仓库(非空的)、ssh链接远程仓库,协同开发

    Git(读音为/gɪt/)是一个开源的分布式版本控制系统,可以有效.高速地处理从很小到非常大的项目版本管理. [1] 也是Linus Torvalds为了帮助管理Linux内核开发而开发的一个开放源码 ...

  3. Git的分支管理

    0.引言 本文参考最后的几篇文章,将git的分支管理整理如下.学习git的分支管理将可以版本进行灵活有效的控制. 1.如何建立与合并分支 1.1分支的新建与合并指令 新建分支 newBranch,并进 ...

  4. 你真的了解git的分支管理跟其他概念吗?

    现在前端要学的只是太多了,你是不是有时会有这个想法,如果我有两个大脑.一个学Vue,一个学React,然后到最后把两个大脑学的知识再合并在一起,这样就能省时间了. 哈哈,这个好像不能实现.现实点吧!年 ...

  5. PHP项目中composer和Git的组合使用

    highlight: 在国内由于众所周知的原因,composer的package可能无法访问,解决办法是使用中国的全镜像: composer config -g repositories.packag ...

  6. 工作中常见的Git本地分支与远程分支同步场景

    Git 是一个开源的分布式版本控制系统,可以有效.高速地处理从很小到非常大的项目版本管理.   一直以来本人使用 Git 处理分支都是现用现查,一是因为怕出错,二还是因为懒,作为一名四年开发经验的前端 ...

  7. Git Flow 分支管理简述

    概述 Git 是什么 Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目. Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的 ...

  8. git(二) 分支管理

    概念 分支就是科幻电影里面的平行宇宙,当你正在电脑前努力学习Git的时候,另一个你正在另一个平行宇宙里努力学习SVN. 如果两个平行宇宙互不干扰,那对现在的你也没啥影响.不过,在某个时间点,两个平行宇 ...

  9. 139.00.005 Git学习-分支管理

    @(139 - Environment Settings | 环境配置) 一.Why? 分支在实际中有什么用呢?假设你准备开发一个新功能,但是需要两周才能完成,第一周你写了50%的代码,如果立刻提交, ...

  10. git的使用学习(五)git的分支管理

    分支管理 分支就是科幻电影里面的平行宇宙,当你正在电脑前努力学习Git的时候,另一个你正在另一个平行宇宙里努力学习SVN. 如果两个平行宇宙互不干扰,那对现在的你也没啥影响.不过,在某个时间点,两个平 ...

随机推荐

  1. win32-FileTimeToSystemTime的使用

    #include <Windows.h> #include <iostream> #include <string> #pragma warning(disable ...

  2. lock锁,Semaphore信号量,Event事件,进程队列Queue,生产者消费者模型,JoinableQueue---day31

    1.lock锁 # ### 锁 lock from multiprocessing import Process,Lock import json,time # (1) lock的基本语法 " ...

  3. linux下docker安装与初始

    1 docker的安装与使用初识 1 docker的安装 # step 1: 安装必要的一些系统工具 sudo yum install -y yum-utils device-mapper-persi ...

  4. vue 项目npm run dev(启动)时报错The service was stopped

    vue项目yarn upgrade后vite build报错,如何项目也运行不起来了. 报错截图: 解决办法: 删除node_modules文件夹,然后执行yarn install重新生成心的node ...

  5. Vue源码学习(十一):计算属性computed初步学习

    好家伙,   1.Computed实现原理 if (opts.computed) { initComputed(vm,opts.computed); } function initComputed(v ...

  6. 【Azure 环境】ADAL(Azure Active Directory Authentication Library )迁移到MSAL(Microsoft Authentication Library)相关问题

    问题一:根据微软官方网站对ADAL(包含ADAL.js, ADAL.NET, ADAL4J)的声明 https://docs.microsoft.com/zh-cn/azure/active-dire ...

  7. book 电子书转换 在线工具

    https://convertio.co/download/911d3a3f39db0b2e39ed6e3c8acb31f6be786a/ Convertio

  8. C/C++ 的 指针/引用 传参

    #include <stdio.h> //指针传值 void addOne(int *a) { printf("%8p\n",a); *a = *a+1; } //引用 ...

  9. linux centos文本编辑模式快速进入末尾最后一行快捷键与跳转首行、行尾和某一行快捷键

    前言 使用vim的过程中想要快速移动光标至行首.行尾.第一行.最后一行或者某一行,本文对此简单介绍. 具体操作 1.快速至当前行的行首:home键最简单 (1) Home键: (2) 符号^(要按sh ...

  10. Linux操作系统加固建议

    1.1.1 口令锁定策略 1.执行备份 (1).redhat执行备份: #cp -p /etc/pam.d/system-auth /etc/pam.d/system-auth_bak (2).SUS ...