Git学习(2)-分支策略和工作流

Git工作流 - 分支的策略 Git提供异常灵活的分支操作,但是在实践中也是需要制定良好的分支策略才能保证有效的利用Git来管理代码。 关于分支策略,有如下几种好的实践方式。 Centralized Workflow / 集中式工作流 Feature Branch Workflow / 特性分支工作流 Gitflow Workflow / Gitflow工作流 Forking Workflow / Forking工作流 阅读详情


GitHub是近年来兴起的版本控制和协作开发网站,每一位开发者都应该熟悉GitHub的常规使用。本文以图例和实际开发流程来讲解什么是分支策略以及分支的作用,以及经典的GitFlow工作流


一、什么是分支策略

在团队开发中,一个项目的发布版本通常使用master分支,这也是一个项目最基本的和不可或缺的分支,当一个项目很小,代码量不多的情况下,团队成员可以只对master分支进行修改操作,并提交修改后的代码。
master
但我们假设项目上线后,我们需要增加新的模块,这时候去修改master分支的代码显然不合适,因为master分支的代码应该是安全的和经过测试的,所以这时我们需要有develop分支。develop分支是开发时使用的分支,我们检出develop分支用以修改代码,修改完了之后,将develop分支和master分支合并,即可将修改的代码同步至master分支,这时的master分支才是稳定的。一个GitHub项目中至少有master分支和develop分支,这是最简单的分支策略。
在这里插入图片描述

二、分支功能介绍

  • master分支,即主分支。任何项目都必须有个这个分支。对项目进行tag或发布版本等操作,都必须在该分支上进行。

  • develop分支,即开发分支,从master分支上检出。团队成员一般不会直接更改该分支,而是分别从该分支检出自己的feature分支,开发完成后将feature分支上的改动merge回develop分支。同时release分支由此分支检出。

  • release分支,即发布分支,从develop分支上检出。该分支用作发版前的测试,可进行简单的bug修复。如果bug修复比较复杂,可merge回develop分支后由其他分支进行bug修复。此分支测试完成后,需要同时merge到master和develop分支上。

  • feature分支,即功能分支,从develop分支上检出。团队成员中每个人都维护一个自己的feature分支,并进行开发工作,开发完成后将此分支merge回develop分支。此分支一般用来开发新功能或进行项目维护等。

  • fix分支,即补丁分支,由develop分支检出,用作bug修复,bug修复完成需merge回develop分支,并将其删除。所以该分支属于临时性分支。

  • hotfix分支,即热补丁分支。和fix分支的区别在于,该分支由master分支检出,进行线上版本的bug修复,修复完成后merge回master分支,并merge到develop分支上,merge完成后也可以将其删除,也属于临时性分支。

  • 经典的GitFlow工作流

三、经典的工作流

git clone https://github.com/pbrong/GitHubTest.git

此时,在文件中出现已经克隆出来的仓库
在这里插入图片描述

  • 3、从master分支上检出develop分支,此时develop分支和master分支是完全一样的,我们查看文件发现没有变化,其实此时的文件就是develop分支中的文件
git checkout -b develop
  • 4、修改develop分支的文件,例如我要增加一个查询商品模块AddItem.java
    在这里插入图片描述
    模拟数次的add和commit
  • 5、切换到master分支
git checkout master

经过数次修改,确认代码无误后切换回master分支,此时的文件结构中并不含有AddItem.java,说明这数次修改都是在develop分支进行的,master分支还是我们一开始的代码.

在这里插入图片描述

  • 6、分支合并
git merge --no-ff develop

在这里插入图片描述

即可看到,master分支出现了AddItem.java文件,说明分支合并成功,此时master分支的代码是经develop分支测试过的,安全可靠的
在这里插入图片描述

  • 7、提交master分支至版本库中

四、同步分支数据

克隆和某一仓库后,会出现只有master分支而没有develop分支的情况,这时只需要在master分支的基础上检出develop分支,然后请求同步即可

git checkout -b develop
git pull origin develop

参考文章
1、https://www.cnblogs.com/wawahaha/p/5171187.html
2、http://www.cnblogs.com/videring/articles/6962005.html
3、https://www.cnblogs.com/yhaing/p/8473746.html
4、https://jingyan.baidu.com/article/948f5924f43f47d80ff5f9f9.html

Git高级玩家手册:分支策略与自动化工作流设计 还在被Git分支混乱、合并请求拖到崩溃?Git高手必看!从Git Flow到CI/CD自动化,本文揭秘让开发效率开挂的终极战术——实战案例亲测:合并请求处理时间暴减72%、部署频率提升3倍!无论你是新手还是老炮,这篇干货都能让你的Git仓库变身‘效率印钞机’,从此告别加班改BUG! 阅读详情

相关推荐

【Git】分支

Git 分支

qq_74897518的博客 1598

【MarkDown】优快云 Markdown之Git图gitGraph详解

对于给定的提交,您可以在声明时使用id属性指定自定义ID,格式为id: ""。commit id: ""有时您可能需要自定义主/默认分支的名称。您可以通过使用 “mainBranchName” 关键字来实现这一点。默认情况下,它的值为“main”。您可以使用指令将其设置为任何字符串。在Mermaid中,默认情况下,分支按照它们定义或在图表代码中出现的顺序显示。有时您可能需要自定义分支的顺序。您可以在分支定义旁边使用“order”关键字来实现这一点。您可以将其设置为一个正数。

少莫千华 6045

Git版本控制、分支策略与代码评审

Git版本控制、分支策略与代码评审 Git介绍 Git工具与代码托管网站 在Windows上安装使用Git IDE支持Git 代码托管网站 Git原理 Git工作流 Git 分支 概述 理解如何使用Git分支 Git常用命令 参考文档 Git使用场景 场景1: 在GitLab上新建一个repository 场景2:将GitLab上一个repository clone到本地 场景...

锐意工作室 9704

Git学习笔记(流程图+示例)

学习git时的笔记

Aen_hen的博客 2218

Git flow分支管理策略

文章目录Git flow分支管理策略Git flow分支管理策略[1] Master和Develop分支[2] Feature分支[3] Release分支[4] Hotfix分支参考文档 Git flow分支管理策略 Git flow分支管理策略 ​ Git flow分支管理策略是一种Git版本控制工作流(分支策略管理模型),规定了使用master分支来管理发布历史,用develop分支来作功能...

锐意工作室 2529

极空间NAS小白也能搞定的Gitea部署:Docker+MySQL避坑全记录

本文为极空间NAS用户提供了一份详尽的Gitea私有代码仓库部署指南。针对极空间ARM架构和图形化Docker管理的特殊性,文章重点讲解了如何通过Docker和MySQL容器进行部署,并提供了三种获取兼容镜像的实战策略,特别是利用第三方镜像站转录的方法,帮助小白用户成功搭建并初始化Gitea服务,实现私有Git托管。

weixin_28318011的博客 369

【Git】—— 分支管理策略

git的分支管理策略

m0_56069910的博客 1667

论文理解【LLM-OR】——【Step-Opt】Training LLMs for Optimization Modeling via Iterative Data Synthesis and

本文提出 Step-Opt-Instruct 方法,针对用 LLM 做 OR 问题求解任务,用迭代问题生成 + 分步验证机制实习更可靠的训练数据合成,从而微调开源 LLM 得到 Step-Opt。在多个 OR 建模基准提升性能,尤其在复杂问题上提升更明显

佚失的诗篇 808

Git 分支策略-选择适合团队的工作流程

Git Flow 是 Vincent Driessen 于 2010 年提出的分支模型。它基于两个长期分支(master和develop),并引入了多个短期分支用于不同的开发任务。不同的 Git 分支策略适合不同规模的团队和项目需求。通过分析 Git Flow、GitHub Flow 和 Trunk Based Development 这三种常见的工作流程,可以看到每种策略各有优缺点。团队规模。

一键难忘的博客 2978

MuJoCo柔性体仿真实战:从FlexComp建模到自定义模型导入

柔性体仿真是机器人交互研究中不可或缺的一环,MuJoCo作为高精度物理求解器,凭借高效的求解速度与批量并行能力,成为强化学习与软体抓取任务的热门选择。其FlexComp机制将连续材料离散为粒子-约束系统,以较低建模成本模拟布料、软组织等形变行为,相比Gazebo等平台更具实时性与可扩展性。技术价值体现在自定义柔性体建模与导入流程中:通过XML配置网格密度、间距与材料参数,即可生成贴合任务需求的软体垫子或硅胶抓手。在柔性抓取、颗粒抓手、医疗仿真等场景中,该方法能快速构建可训练的环境。围绕环境搭建、FlexCo

weixin_29045585的博客 163

Pico-实时预览工具PreviewTool

Unity XR SDK与Preview Tool下载链接:SDK - Pico Developer Platform1、下载Preview Tool后,将PreviewTool的APK先安装在VR头显里2、在PC端打开Preview Tool.exe文件Window -> Package Manager -> Add package from disk,选择下载的pico sdk中的package.json(如下图),Open导入。Edit -> Project Settings,设置设备和安卓版本,如下

晴天下的大头娃娃 4252

git工作流程及使用

git工作流程(图例)一般工作流程如下:1.从远程仓库中克隆Git资源作为本地仓库。2.从本地仓库中checkout代码然后进行代码修改3.在提交前先将代码提交到暂存区。4.提交修改。提交到本地仓库。本地仓库中保存修改的各个历史版本。5.在修改完成后,需要和团队成员共享代码时,可以将代码push到远程仓库。下图展示了Git的工作流程: 3  Git的安装最早Git是在Linux上开发的,很长一段时...

viewsonick的博客 2283

Cesium 相机操作

Cesium 提供了三种方式对相机的位置进行摆放。

虎康的博客 2594

Git分支策略与工作流

Git分支策略与工作流

偏执的小男孩儿 1439

YOLOv8改进 | 主干网络 | 增加网络结构增强小目标检测能力【独家创新——附结构图】

YOLOv8改进,小目标检测,yolov8

kay_545 6022

Arch Linux 命令大全,值得收藏!

Arch Linux 是一款轻量级、高度可定制的 Linux 发行版,以其简洁和强大的特性深受高级用户喜爱。但对于新手来说,完全掌握 Arch Linux 的操作需要时间和实践。本文将为您详细介绍常用的 Arch Linux 命令,涵盖系统管理、文件操作、用户管理、软件安装与管理、网络配置和磁盘管理等内容,帮助您更高效地使用 Arch Linux。

网络技术联盟站 975

Git 分支策略

Git分支策略是组织和管理工作特性开发、协作和版本控制的技术。选择合适的策略取决于团队规模、项目需求和部署需求。

嗨,欢迎来到我的 优快云 博客小天地!一名深耕多年的技术发烧友。在这里,我将把日常工作中积累的宝贵经验,从复杂架构设计的精妙之处,到代码优化的实战技巧,毫无保留地分享给大家。 4510

【WorkBuddy专栏58】腾讯为什么要「自己打自己」——7款AI智能体产品全景对比与「赛马」逻辑深度拆解

【WorkBuddy专栏57】你的左侧空间不是「日任务清单」——工作空间才是 WB 变聪明的核心秘密

AI人人懂 685

【Git学习笔记】Git分支管理策略及其结构原理分析

哈喽,各位小伙伴大家好!今天开始我们就进入新的篇章——Git学习!。今天我们来讲一下Git初始及其结构原理分析。话不多说,我们进入正题!向大厂冲锋。

大白的编程日记. 1543

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

Git分支管理(Git分支的原理、创建、切换、合并、删除分支)

在上一篇文章中,我们学习了如何使用Git的一些基本操作,例如安装Git、创建本地仓库、配置Git、添加文件、修改文件、删除文件、版本回退等操作,现在我们来学习一下Git的必杀技特性:分支模型。

m0_61227789的博客 5812

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

Git 分支管理策略汇总

以上四种就是目前相对主流的分支管理策略,但没有哪一种策略是万能的。所以无论选择哪一种,都需要考虑团队的实际情况,以及项目的具体业务需求,适合自己的才是最好的。临时分支不应该存在太久,每个分支应尽量保持精简,用完即删工作流应该尽量简单,同时方便回滚工作流程应该符合我们的项目发布计划以上就是本文的全部内容,如果觉得还不错的话欢迎,转发和关注Git 分支管理策略与工作流程Git 分支管理策略总结一个完美的 Git 分支管理模型Git 工作流程Git 分支管理策略分支模型与主干开发。

AlwaysBeta 的专栏 4111

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

Git分支管理与高效工作流实战

本文详细介绍了Git分支管理与工作流实践。主要内容包括:分支基础操作(创建、切换、删除)、合并策略(merge与rebase)及冲突解决方法,并重点解析了Git Flow工作流模型的主要分支结构和使用场景。文章通过可视化图表和实用命令示例,帮助开发者掌握高效的分支协作技巧,适合团队规范化开发流程参考。

冰茶的博客 1178

Git分支策略

主流Git分支策略对比:Git Flow适合需要维护多版本的复杂项目,结构严谨但流程较重;Trunk-Based强调持续集成,适合敏捷团队但要求高自动化;GitHub/GitLab Flow是轻量级方案,适合SaaS产品。选择时需考虑团队规模、项目类型和工程成熟度,小型团队可从GitHub Flow入门,传统软件推荐Git Flow,而成熟团队可尝试Trunk-Based以实现快速交付。核心原则是保持主干稳定,匹配团队实际需求。

llf_cloud的博客 1060

Git团队协作终极指南:10个高效分支策略和工作流程技巧

在软件开发的世界里,高效的团队协作离不开科学的Git分支管理策略。无论是小型创业团队还是大型企业项目,选择合适的分支策略都能显著提升开发效率、降低冲突风险。本文将分享10个经过实践检验的Git分支策略和工作流程技巧,帮助团队实现无缝协作与高效交付。 ## 1. 分支命名规范:构建清晰的项目结构 🔖 规范的分支命名是团队协作的基础,它能让所有成员快速了解分支用途。建议采用以下命名模式: -

gitblog_00443的博客 697

Git分支管理策略

小编利用空余时间整理了一份《MySQL性能调优手册》,初衷也很简单,就是希望能够帮助到大家,减轻大家的负担和节省时间。关于这个,给大家看一份学习大纲(PDF)文件,每一个分支里面会有详细的介绍。这里都是以图片形式展示介绍,如要下载原文件以及更多的性能调优笔记(MySQL+Tomcat+JVM)!《一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码》点击传送门即可获取!

2301_82242670的博客 1693

git分支管理及策略

Git 的默认分支就是 master。你所作的commit会在master分支上自动移动。在多次提交操作之后,master分支指向最后那个commit object(提交对象链)。Git 的 “master” 分支并特殊,跟其它分支没有区别。之所以几乎每一个仓库都有 master 分支,是因为 git init 命令默认创建它。但很多时候听别人说master分支,往往有一种 这个分支是稳定、无bug的分支。而develop往往预示这新功能,不稳定的分支。这和分支策略有关,但本质上这两个分支没区别。

秃头之旅 1610
上一篇: SpringBoot学习笔记(9)-使用Junit单元测试
下一篇: SpringBoot学习笔记(10)-使用Gradle和Maven将项目打包
BoringRong
BoringRong 领域专家: 后端开发技术领域 领域专家: 后端开发技术领域
博客等级 码龄9年 2万+粉丝 386原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

BoringRong

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值