【Git】Git分支与标签掌握这些技巧让你成为合格的码农

这篇具有很好参考价值的文章主要介绍了【Git】Git分支与标签掌握这些技巧让你成为合格的码农。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

git 标签和分支,Git,git

🎉🎉欢迎来到我的CSDN主页!🎉🎉

🏅我是Java方文山,一个在CSDN分享笔记的博主。📚📚

🌟推荐给大家我的专栏《Git》。🎯🎯

👉点击这里,就可以查看我的主页啦!👇👇

Java方文山的个人主页

🎁如果感觉还不错的话请给我点赞吧!🎁🎁

💖期待你的加入,一起学习,一起进步!💖💖

git 标签和分支,Git,git

一、分支与标签在开发过程中的实际场景

1.1.什么是分支与标签

  1. 分支(Branches)

    • 功能开发:当团队成员需要开发新的功能时,可以创建一个新的功能分支。这个分支可以独立于主开发线,不影响其他开发工作,同时允许团队成员在不干扰主要开发线的情况下进行工作。
    • Bug 修复:如果在主开发线上发现了 Bug,团队可以创建一个专门的修复分支来解决问题,而不必等待当前正在进行的开发完成。
    • 版本发布:在准备发布新版本时,可以为发布创建一个专门的分支。这样团队可以继续在主开发线上进行新功能的开发,同时在发布分支上进行最后的稳定性测试和 bug 修复。
  2. 标签(Tags)

    • 版本发布:当软件达到一个里程碑式的版本,比如一个重要的发布版本或者里程碑版本,团队可以为该版本创建一个标签。这个标签可以被用来标识对应版本的代码状态,方便日后回溯和管理。
    • 重要事件:有些团队会在代码中打标签以标识重要事件,比如重大功能上线、重要的架构调整等,以便日后追踪了解项目发展的历程。

1.2.开发环境分层

  1. 开发(Development)

    • 代表着程序员或开发团队编写、调试和测试新功能或修改现有功能的阶段。
    • 在开发环境中,开发人员可以自由地进行代码编辑、构建和调试,以实现新功能或解决现有问题。
    • 这个阶段通常是代码变动最频繁、灵活度要求最高的阶段。
  2. 测试(Testing)

    • 代表着对开发完成的功能、模块或整体系统进行各种测试,包括单元测试、集成测试、验收测试等。
    • 在测试环境中,测试人员或自动化测试工具会对软件进行严格的测试以确保其功能的正确性、性能的稳定性等。
    • 这个阶段的重点是验证软件的质量,发现并修复潜在的缺陷。
  3. 演示(Staging)

    • 代表着将已经通过开发和测试的功能部署到一个类似生产环境的环境中进行最终的集成测试和验证。
    • 在演示环境中,通常会模拟真实的生产环境配置,包括数据库、缓存、消息队列等,以确保软件能够正常运行并与其他系统协作。
    • 这个阶段的目标是确保部署到生产环境之前的系统稳定性和一致性。
  4. 生产(Production)

    • 代表着最终用户会接触到的实际运行环境,软件在这里提供服务并处理真实的数据和用户请求。
    • 在生产环境中,软件需要保持高可用性、高性能和安全性,并且通常需要与监控系统结合以及随时准备应对故障。
    • 这个阶段的关注点是确保系统可靠地为最终用户提供服务,并及时响应和处理各种异常情况。

1.3.分支与标签的关系

  • "dev"阶段对应"alpha"状态,表示正在开发阶段的软件版本。
  • "test"阶段对应"beta"状态,表示正在测试阶段的软件版本。
  • "pre"阶段对应"rc"状态,表示预发布或者灰度测试阶段的软件版本。
  • "pro"阶段对应"r"状态,表示正式发布或者生产环境中的软件版本。

在标签后缀中标明状态有以下几个好处

  1. 清晰的版本状态识别:通过在标签后缀中标明状态,可以清晰地识别出当前版本处于哪个阶段,包括开发、测试、预发布和生产等状态。这有助于团队成员和其他相关人员快速理解当前版本所处的位置,以及该版本适合在何种环境中使用。

  2. 方便的版本管理:带有状态后缀的标签能够方便地进行版本管理。开发团队可以根据不同状态的标签快速定位到相应阶段的版本,并且能够在不同环境中进行相应版本的部署和测试,从而提高版本管理的效率。

  3. 统一的命名规范:通过在标签后缀中标明状态,可以建立统一的命名规范,使得团队内部对于各个阶段版本的命名统一,降低了沟通成本和误解的可能性。

  4. 便于追溯历史记录:在项目历史记录中,带有状态后缀的标签可以帮助开发人员更容易地追溯到不同阶段的版本。这对于查找特定阶段的代码状态或者回溯历史版本是非常有帮助的。

  5. 支持并行开发和发布:通过标签后缀标明状态,不同状态的版本可以并行存在,并且能够清晰地区分开来。这有助于支持团队在不同阶段进行并行开发和发布,提高了团队的灵活性和效率。

二、Git分支的讲解

2.1.GitBashHere操作分支

查看分支

git branch           //查看本地分支
git branch -a        //查看远程分支

git 标签和分支,Git,git

可以看到我们除了默认的master并无其他分支

创建分支git branch name      //仅仅保存本地,远程还需要push

git 标签和分支,Git,git

 Git分支的命名规范dev/test/pre/pro(即master)

切换分支git checkout name
git 标签和分支,Git,git

创建+切换分支git checkout -b name

git 标签和分支,Git,git

合并某分支到当前分支 git merge name

我先在dev提交五个文件后再到test合并

git 标签和分支,Git,git

分支提交远程git push origin name

git 标签和分支,Git,git

git 标签和分支,Git,git

删除分支(先删除本地才能删除远程,删除本地需要先切其他分支

git branch -d name              //删除本地分支
git push origin --delete dev   //删除远程分支

git 标签和分支,Git,git

2.2.IDEA中操作分支

右键git工程,进入git,选择Branches

git 标签和分支,Git,git

选择要切换的分支 

当前的分支是master,我新建一个dev2并切换

git 标签和分支,Git,git

选中要切换的分支,checkout确定

git 标签和分支,Git,git

当前所处的就是dev2分支了

git 标签和分支,Git,git

但是 “Remote Branches” 下依然只有一个 master 分支,表明在我们的远程仓库依然只有一个master 分支,因此我们还需要把在本地仓库新建的分支推送到远程仓库中,这样就可以在远程仓库中看到新建的分支了。

单击dev2 ,然后在左边单击 “Push” ,弹出推送对话框。单击 “Push” 推送到远程仓库,这样分支新建操作彻底完成,可以看到在"Remote Branches"分支下面出现了“dev2 ”,我们可以在该分支进行编码并进行拉取和推送操作。

git 标签和分支,Git,git

如果删除分支之前,建议先切换到(Checkout)其他分支,例如,Checkout到master分支,当然这并不强制,只是为了方便删除分支而已

git 标签和分支,Git,git

三、Git标签的讲解

3.1.GitBashHere操作标签

发布一个版本时,我们通常先在版本库中打一个标签(tag),这样,就唯一确定了打标签时刻的版本。将来无论什么时候,取某个标签的版本,就是把那个打标签的时刻的历史版本取出来。所以,标签也是版本库的一个快照。

查看所有标签git tag

标签不是按时间顺序列出,而是按字母排序的。可以用git show <tagname>查看标签信息

git 标签和分支,Git,git

创建tag

首先,切换到需要打标签的分支上,例如:test,再创建标签

git 标签和分支,Git,git

Tag格式: 主版本号.次版本号.修订号-类型标签,其中类型标签可为:alpha、beta、rc、r。
Tag示例:1.0.0-alpha、1.0.0-beta、1.0.0-rc、1.0.0-r

推送标签到远程git push origin

git 标签和分支,Git,git

git 标签和分支,Git,git

删除tag

如果标签已经推送到远程,要删除远程标签就麻烦一点,先从本地删除
         git tag -d 1.0.0-alpha
然后,再从远程删除。删除命令也是push,但是格式如下:
         git push origin :refs/tags/1.0.0-alpha

git 标签和分支,Git,git

3.2. IDEA中操作标签

idea创建tag

可以右键项目,然后按照 Git -> Repository -> Tag... 创建tag。

或 顶部菜单栏 按照 VCS -> Git-> Tag... 创建tag。

git 标签和分支,Git,git

推送远程分支

push的时候特别注意打勾即可

git 标签和分支,Git,git

查看某个tag版本只需要切换版本即可

git 标签和分支,Git,git

git 标签和分支,Git,git

这时候IDEA就会切换代码了

git 标签和分支,Git,git

对之前的代码提交版本打tag

git 标签和分支,Git,git

四、拓展--实战分支与标签

以下是用代码来演示整个过程(还需大家仔细区分)

   1.克隆远程库test1
     git clone git@github.com:yanppp999/test1.git

   2.依次创建dev/qas/pre分支(pro即master,已存在不用再创建),然后切换到dev分支
     git branch dev
     git branch test
     git branch pre 

   #add(int a, int b){a+b+b}   v1.0.0 
   #add(int a, int b, int c)   v1.1.0
   #add(int... arr)            v1.2.0
   3.创建并编辑Cal.java类,添加一个add(int a,int b)方法,三步曲:add->commit->push(*****)
     git add Cal.java
     git commit -m '项目一期完成'
     git push origin dev

     注1:在有分支情况下,push命令需要添加远程仓库名和分支名这两个参数
          git push origin dev 
     注2:doc窗口切换到master,输入ls命令,Cal.java是找不到的,同理在github网站上,也要选择dev分支才能看到Cal.java文件 
          git branch master
          ls
     至此,项目一期工作完成,接下来进行测试阶段(会在dev-test两个分支间不断切换)
     
     ## 标签相关内容,在分支讲完之后,再重新添加进来
     ## 下面命令此步骤先跳过 
     ## 创建并推送标签“dev-1.0.0”至远程
     git checkout dev
     git tag 1.0.0-alpha
     git push origin 1.0.0-alpha
   
   4.将dev合并到test,并提交
     git checkout test
     git merge dev
     git push origin qas

   5.测试结束之后,创建标签:qas-1.0.0
     git tag qas-1.0.0
     
   6.将qas合并到pre
     git checkout pre
     git merge qas
     git tag pre-1.0.0

   7.将pre合并到master
     git checkout master
     git merge pre
     git tag prd-1.0.0 


   注1:实际生产中的APP或软件软件版本命名规范详解,详情可参考:资料/12,资料/13
        v1.0.0.191202_be.d
        v1.0.0.191210.t 
        v1.0.0.191221.rc 
        v1.0.0.191225.r
        
8. git clone指定branch或tag
   1.取完整
     git clone https://github.com/arvidn/libtorrent.git

   2.使用指定branch
     git checkout origin/dev

   3.使用指定tag 
     git checkout 1.0.0-alpha   

  4.也可以在clone的时间指定tag或branch:
    git clone -b RC_1_1 https://github.com/arvidn/libtorrent.git 
    git clone -b libtorrent-1_1_9 https://github.com/arvidn/libtorrent.git

 git 标签和分支,Git,git

到这里我的分享就结束了,欢迎到评论区探讨交流!!

💖如果觉得有用的话还请点个赞吧 💖

git 标签和分支,Git,git文章来源地址https://www.toymoban.com/news/detail-751604.html

到了这里,关于【Git】Git分支与标签掌握这些技巧让你成为合格的码农的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 发掘JavaScript潜力:掌握高级技巧,成为JavaScript编程大师!

    🎬 岸边的 风:个人主页  🔥 个人专栏  :《 VUE 》 《 javaScript 》 ⛺️ 生活的理想,就是为了理想的生活 ! 众所周知, JavaScript  是一种非常流行 🔥 的编程语言,它已经成为了网页开发的必备技能。但是,在我们从事 JavaScript编程 的时候,我们却没有完全发掘和利用它的

    2024年02月14日
    浏览(47)
  • AI绘画想生成好看的图,这些技巧不得不掌握

    现在,很多的人用AI绘画进行创作,但作出来的画却千差万别,有的好看,有的牵强,找不到那种惊艳的感觉。#AI绘画# 究竟如何才能让ai创作出好看的画面呢,不但逼真,还能一眼惊叹? 当然是有技巧,这些技巧如果你掌握了,我相信你一样能生产出惊艳的画作。 图源:数

    2024年02月09日
    浏览(41)
  • 掌握这2个小技巧,让你轻松学会手机拍照计算数量

    你们有没有过计数的烦恼呢?像是那些在工地上班,或是从事仓库管理员的小伙伴,难免时常需要盘点货物数量,如果少还好,多的话则是一件非常头疼的事情,例如数一半忘记数到哪里了,或是中途被其它事情打断,导致需要重头来过,这样非常的浪费时间。 其实,我有几

    2024年02月09日
    浏览(63)
  • 【Git】Git分支与应用分支&Git标签与应用标签

    在 Git 中,分支是指一个独立的代码线,并且可以在这个分支上添加、修改和删除文件,同时作为另一个独立的代码线存在。一个仓库可以有多个分支,不同的分支可以独立开发不同的功能,从而可以方便地进行并行开发和测试 Git 的分支可以帮助团队进行并行开发,例如在主

    2024年02月05日
    浏览(34)
  • 谁说配置难?这篇文章让你轻松掌握xilinx 7系列FPGA配置技巧

      本文旨在通过讲解不同模式的原理图连接方式,进而配置用到引脚的含义(手册上相关引脚含义有四、五页,通过本文理解基本上能够记住所有引脚含义以及使用场景),熟悉xilinx 7系列配置流程,以及设计原理图时需要注意的一些事项,比如flash与FPGA的上电时序。   x

    2024年02月06日
    浏览(65)
  • Git分支与Git标签详解

    目录 前言 一、Git分支(Branch) 1.分支的概念 2.分支的常用操作 3.Git 分支管理 二、Git标签(Tag) 1.标签的概念 2.标签的类型 3.标签的常用操作 4.Git标签管理         在软件开发过程中,版本管理是非常重要的一环。Git作为目前最流行的分布式版本控制系统之一,提供了丰

    2024年02月05日
    浏览(36)
  • AI文生图:从零到逼真-掌握技巧,让你的AI图像生成更出色 Part I

    根据调查数据,超过90%的用户在使用AI文生图工具时,都期望能够生成高度逼真的图像。 经过深入的测试和验证,我们决定撰写一系列文章,向您展示提示词技巧以及相关的命令参数。通过这些技巧,您将能够轻松地利用AI工具,制作出令人惊叹的逼真图像。 在接下来的五期

    2024年02月22日
    浏览(48)
  • 一个合格(优秀)的前端都应该阅读这些文章

    的确,有些标题党了。起因是微信群里,有哥们问我,你是怎么学习前端的呢?能不能共享一下学习方法。一句话也挺触动我的,我真的不算是什么大佬,对于学习前端知识,我也不能说是掌握了什么捷径。当然,我个人的学习方法这篇文章已经在写了,预计这周末会在我个

    2024年02月08日
    浏览(43)
  • 《五》 Git 中的标签和分支

    Git 可以给仓库中某一次 commit 的提交打上标签。对于重大的版本经常会打上一个标签来表示它的重要性。 创建标签: git tag【tag 名称】 :创建标签。 查看标签: git tag :查看标签。 推送标签到远程仓库: 默认情况下, git push 命令并不会将标签推送到远程仓库中去,必须显

    2024年02月09日
    浏览(33)
  • Git基础命令,分支,标签的使用【快速入门Git】

    创建仓库 命令 说明 git init 初始化仓库 git clone 克隆远程仓库 提交与修改 命令 说明 git add 添加文件到暂存区 git status 查看仓库当前的状态,显示有变更的文件 git diff 比较文件的不同,即暂存区和工作区的差异 git commit 提交暂存区到本地仓库 git reset 回退版本 git rm 将文件从暂

    2024年02月20日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包