git的分支及标签使用结合全网最详细的情景演示

news2024/12/26 21:33:22

目录

一git的分支

  ⭐⭐  补充一个拓展知识:

1.1 git分支

1.2 git分支的增删查命令       

1.3 情景演示

二.git标签 

2.1 分支与标签的关系

2.2 git标签的基本命令

2.3 情景演示 


一git的分支

  ⭐⭐  补充一个拓展知识:

        软件开发中常见的四个环境:开发环境(dev)、测试环境(test)、预发布环境(pre)、生产环境(pro)

在软件开发过程中,通常会有多个环境用于不同阶段的工作和测试。这些环境的作用和特点如下:

  1. 开发环境(Development Environment,简称Dev):用于开发人员进行软件编码、调试和单元测试的环境。开发环境通常是每个开发人员在本地或者共享的开发服务器上进行工作。

  2. 测试环境(Testing Environment,简称Test):用于测试人员进行集成测试、系统测试和验收测试的环境。测试环境通常需要模拟生产环境,并且需要和生产环境尽量保持一致。

  3. 预发布环境(Staging Environment,简称Stage或Pre-production):在软件发布到生产环境之前,通常会有一个预发布环境,用于进行最终的测试、性能测试和预发布验证。(一般情况下这一种不会用,只会出现在非常重要的项目且大型的公司中)

  4. 生产环境(Production Environment,简称Prod):这是用户最终访问和使用软件的环境,也是软件真正运行和提供服务的环境。

这些环境的设置有助于在软件开发和发布过程中提高质量,降低风险。同时,也有助于隔离不同阶段的工作,确保开发人员、测试人员和运维人员能够分工协作,提高效率。

1.1 git分支

        Git分支是用于在代码库中创建不同的版本路径的功能。它允许开发者在不影响主要代码线的情况下进行新功能的开发、修复错误或实验性的修改。

        git分支的作用:

  1. 并行开发:通过使用分支,多个开发者可以同时处理不同的任务和功能。每个开发者在自己的分支上独立工作,可以避免互相影响和冲突。

  2. 版本管理:使用分支可以方便地创建和管理不同版本的代码。您可以创建一个主分支用于稳定的发布版本,然后创建其他分支来修复错误或添加新功能。这样可以确保开发过程中的代码升级和回滚都更加可控。

  3. 实验性修改:如果您想对某个功能进行一些实验性的修改,但不确定是否适合合并到主干代码中,可以在新分支上进行更改并测试,而无需影响主要工作流程。

1.2 git分支的增删查命令       

  1. 创建分支:

    • git branch <branch_name>:创建一个新的分支。
    • git checkout -b <branch_name>:创建一个新的分支并切换到该分支。
  2. 切换分支:

    • git checkout <branch_name>:切换到指定的分支。
  3. 查看分支:

    • git branch:列出所有分支,当前分支会用星号标记。
  4. 删除分支:

    • git branch -d <branch_name>:删除指定的分支(只能删除已合并的分支)。
    • git branch -D <branch_name>:强制删除指定的分支

1.3 情景演示

        程序员在一个项目中需要写10个模块,但是只完成了6个,将这6个给测试人员进行测试发现有两个不合格

         ①新建一个仓库,建好之后直接初始化readme文件,复制ssh地址,克隆下来

        

②建立一个dev开发分支和一个test 测试分支 

       

③建10个文件夹模拟10个模块   ,并将6个模块交给测试进行测试                                                    

         进入测试分支可以看到只有没有测试的其它4个模块

 

         将其与开发分支合并,当切换为master分支时,又只能看到4个模块了

        ④测试人员将不合格的两个模块删掉  

         ⑤输入命令将test ,dev分支推送到远程gitee上我们在不同的分支看到的文件就是不一样的

        git push origin test

        git push origin dev

二.git标签 

        2.1 分支与标签的关系

          在不同环境下的分支,我们给标签设置的版本后缀名不一样,方便以后进行区分

  •  dev-->alpha
  • test-->beta
  • pre-->rc
  • pro-->r

        Git标签是用于在代码库中标记特定版本的功能。它被用来给代码库中的某个提交打上一个有意义的标识,通常用于发布或标记重要的里程碑

        标签在Git中的作用:

  1. 版本标记:标签可以用来标记发布版本,例如发布1.0版本或者某个重要的里程碑版本。通过为特定的提交打上标签,可以方便地进行代码版本的标识和管理。

  2. 公开可追溯:标签通常会与公开发布版本相结合,为用户提供一个稳定和可追溯的代码版本。用户可以根据标签名称轻松地获取和部署特定版本的代码。

2.2 git标签的基本命令

  1. 创建标签:

    • git tag <tag_name>:在当前提交上创建一个新的标签。
    • git tag -a <tag_name> -m "Tag message":创建一个带注释的标签。
  2. 查看标签:

    • git tag:列出所有标签。
  3. 切换到标签:

    • git checkout <tag_name>:切换到指定的标签。
  4. 删除标签:

    • git tag -d <tag_name>:删除指定的标签。
  5. 推送标签:

    • git push origin <tag_name>:将指定的标签推送到远程仓库。

2.3 情景演示 

      ①  将项目做到一定的阶段打一个标签,将其推送到远程    ,这里新建了一个开发环境的标签   

② 在gitee上可以查看的到 ,方便到时候后续修订改了其他的代码,就可以回溯

③ 新建一个测试环境标签 

 

 后续又迭代的版本或者修复好bug的版本都可以这样打好标签,为用户提供一个稳定和可追溯的代码版本。用户可以根据标签名称轻松地获取和部署特定版本的代码。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1199571.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【Java】注解(Annotation)

1.注解 就是lava代码里的特殊标记&#xff0c;比如:Override、Test等&#xff0c;作用是:让其他程序根据注解信息来决定怎么执行该程序。注意:注解可以用在类上、构造器上、方法上、成员变量上、参数上、等位置处。 如下Override所示&#xff1a; 2.自定义注解 就是自己定义…

零基础学习Matlab,适合入门级新手,了解Matlab

一、认识Matlab Matlab安装请参见博客 安装步骤 1.界面 2.清空环境变量及命令 &#xff08;1&#xff09;clear all &#xff1a;清除Workspace中的所有变量 &#xff08;2&#xff09;clc&#xff1a;清除Command Window中的所有命令 二、Matlab基础 1.变量命名规则 &a…

第1关:完整的包装类

题目&#xff1a; 根据给定头文件写cpp文件 /********** BEGIN **********/ #include"Int.h"int Int::getValue()const{return value;} void Int::setValue(int v){valuev;} Int::Int(){value0;} Int::Int(int v){valuev;} Int::Int(const Int&rhs){this->v…

fetch函数没有默认超时时间的配置吗

chatgpt&#xff1a; https://chat.xutongbao.top/ 截至我知识的最后更新时间&#xff08;2023年&#xff09;&#xff0c;原生的 fetch API 在大多数浏览器中并没有内置的默认超时时间。这意味着如果你没有明确地设置一个超时期限&#xff0c;fetch 请求可能会永远挂起&…

通过结构间比值比较迭代次数

( A, B )---3-30-2---( 1, 0 )( 0, 1 ) 让网络的输入只有3个节点&#xff0c;A有5个点&#xff0c;B全是0&#xff0c;排列组合。让A,B训练集分别有3&#xff0c;4&#xff0c;5&#xff0c;6张图片&#xff0c;统计迭代次数并排序。 先比较图片数量是3和4的情况 n4 迭代次数…

HTML5+CSS3+Vue小实例:输入框打字放大特效

实例:输入框打字放大特效 技术栈:HTML+CSSS+JS 效果: 源码: 【HTML】 <!DOCTYPE html> <html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"><meta name="viewport" content=&…

数据架构与数据模型

数据架构&#xff1a; 待定 数据模型&#xff1a; 数据模型是对现实世界数据特征的抽象&#xff0c;用于描述一组数据的概念和定义。数据模型从抽象层次上描述了数据的静态特征、动态行为和约束条件。数据模型所描述的内容有三部分&#xff0c;分别是数据结构、数据操作和数…

【数据结构】入队序列出队序列问题(以21年408真题举例)

题型说明 一般是一个队列&#xff0c;其中一边可以入队&#xff0c;另一边可以入队和出队只可入队的含义是从这个方向是以队列形式存在可以入队和出队表示此边以堆形式存在 怎么分析&#xff1f; 以21年408真题举例 考点分析 出队序列存在两种情况&#xff1a;入之后就出&…

外部董事的职责与作用

&#xff08;一&#xff09;监督公司的管理与运营 外部董事在公司治理中的一个重要职责就是监督公司的管理与运营&#xff0c;监督公司管理层是否有效执行公司战略、规章制度和内控机制&#xff0c;帮助公司识别管理和运营上的问题&#xff0c;从而提供正确的决策和解决方案。比…

大二第四周总结——用原生js封装一个分页器

用原生js封装一个分页器 起因&#xff1a;这次项目还是用原生的js来写的&#xff0c;我负责的是后台&#xff0c;分页是后台最常见的一个功能了&#xff0c;于是干脆封装一下,废话少说&#xff0c;直接上代码 这里是基本的样式 .pagination {display: flex;width: 600px;hei…

windows HOOK学习(一)

了解HOOK 一&#xff1a;HOOK是什么&#xff1f;二&#xff1a;HOOK的分类三&#xff1a;HOOK的原理&#xff1f;四&#xff1a;为什么全局钩子HOOK必须写到DLL中&#xff1f;五&#xff1a;HOOK的类型 一&#xff1a;HOOK是什么&#xff1f; hook就是我们平时听到的钩子&…

Arduino ESP8266使用AliyunIoTSDK.h连接阿里云物联网平台

文章目录 1、AliyunIoTSDK简介2、相关库安装3、阿里云创建产品&#xff0c;订阅发布4、对开源的Arduino ESP8266源代码修改5、使用阿里云点亮一个LED灯6、设备向阿里云上传温度数据7、项目源码 1、AliyunIoTSDK简介 AliyunIoTSDK是arduino的一个库&#xff0c;可以在arduino的…

第 371 场 LeetCode 周赛题解

A 找出强数对的最大异或值 I 模拟 class Solution { public:int maximumStrongPairXor(vector<int> &nums) {int n nums.size();int res 0;for (auto x: nums)for (auto y: nums)if (abs(x - y) < min(x, y))res max(res, x ^ y);return res;} };B 高访问员工 …

Maya 2024 for Mac(3D建模软件)

Maya 2024是一款三维计算机图形软件&#xff0c;具有强大的建模、动画、渲染、特效等功能&#xff0c;广泛应用于影视、游戏、广告等行业。以下是Maya 2024软件的主要功能介绍&#xff1a; 建模&#xff1a;Maya 2024具有强大的建模工具&#xff0c;包括多边形建模、曲面建模、…

Technology Strategy Patterns 学习笔记6-Communicating the Strategy-Approach Patterns

1 30-Second Answer 1.1 类似麦肯锡电梯谈话 Map an outline of three bullet points in your head, and then give the executives the simple, declarative, definitive answerAdd your three reasons or characterizations with your three bullet points also as high-le…

计算机网络——b站王道考研笔记

第一章 计算机网络体系结构 1.计算机网络概述 &#xff08;1&#xff09;概念 计算机网络是一个将分散的&#xff0c;具有独立功能的计算机系统&#xff0c;通过通信设备与线路连接起来&#xff0c;由功能完善的软件实现资源共享和信息传递的系统&#xff1b; 是互连的&#…

第18章 类集框架

通过本章需要掌握Java设置类集的主要目的与实现原理&#xff0c;掌握Collection接口的作用及小狐妖操作方法&#xff0c;掌握Collection子接口List、Set的区别及常用子类的使用与核心实现原理&#xff0c;掌握Map接口的作用及与Collection接口的区别&#xff0c;理解Map接口设计…

云原生 黑马Kubernetes教程(K8S教程)笔记——kubernetes介绍。Master集群控制节点、Node工作负载节点、Pod控制单元

参考文章&#xff1a;kubernetes介绍 文章目录 1. Kubernetes介绍1.1 应用部署方式演变传统部署&#xff1a;互联网早期&#xff0c;会直接将应用程序部署在物理机上虚拟化部署&#xff1a;可以在一台物理机上运行多个虚拟机&#xff0c;每个虚拟机都是独立的一个环境&#xff…

jQuery和BootStrap

文章目录 jQuery1、jQuery介绍2、jQuery的选择器2.1、直接查找2.2、导航查找 3、jQuery的绑定事件4、jQuery的操作标签5、jQuery的动画5.1、基本方法5.2、自定义动画 6、扩展方法 (插件机制)7、BootStrap jQuery 1、jQuery介绍 jQuery是什么 jQuery是一个快速、简洁的JavaSc…