• Git版本控制系统之分支与标签(版本)


    一、Git分支(Branch)

        当我们谈论版本控制系统时,分支是一个关键的概念。在 Git 中,分支是用来处理不同代码线路的机制,允许你在项目的不同部分之间工作而不影响主要代码线。

    1.1 分支作用

            分支是 Git 中用来处理项目中不同功能或特性的独立线路的工具。它允许你在不影响主要项目的同时进行开发、测试和实验。每个分支都是独立的,修改一个分支不会影响其他分支。

    应用场景:

    新功能开发: 创建一个新的分支,专注于新功能的开发,而不会影响主分支(通常是master)。
    Bug 修复: 如果在主分支上发现了 bug,可以在一个新分支上进行修复,而不会中断正在进行的开发。
    实验性开发: 为了尝试一些实验性的想法,可以创建一个分支,在上面进行实验,然后决定是否将其合并到主分支。

    1.2 四种分支管理策略

    在Git中,分支有四个主要的环境,通常被称为四种基本的分支管理策略: 

    一、主分支(Master/Main)

    • 作用: 主分支通常是项目的主要分支,包含了当前最稳定、可部署的代码。
    • 应用场景: 当开发新功能或修复 bug 时,通常从主分支创建新的分支进行工作。

    二、开发分支(Develop):

    • 作用: 开发分支是用于集成各种功能的主分支。当一个开发周期结束时,开发分支通常会合并到主分支,形成一个稳定的版本。
    • 应用场景: 在开发新功能时,从主分支创建一个新的开发分支,完成开发后再将其合并回开发分支。

    三、特性分支(Feature):

    • 作用: 特性分支用于开发单个功能或特性。每个特性都有一个对应的特性分支,使得功能的开发独立于主分支和其他特性。
    • 应用场景: 当需要添加新功能时,从开发分支创建一个新的特性分支,完成开发后将其合并回开发分支。

    四、发布分支(Release):

    • 作用: 发布分支用于准备发布新版本。在发布分支上进行最后的测试、文档更新和版本号增加等操作。
    • 应用场景: 当开发周期结束时,从开发分支创建一个新的发布分支,准备发布。发布后,将发布分支合并回主分支和开发分支。

    这些环境提供了一种有效的方式来组织团队的工作流,确保代码的稳定性和可维护性。使用这些环境,可以清晰地了解每个分支的目的和状态,从而更轻松地协作和集成代码。这种分支管理策略通常被称为Git Flow,是一种在软件开发中广泛应用的工作流程。

    1.3 使用案例

    1.3.1 指令 
    1. # 查看本地分支
    2. git branch
    3. # 创建新分支
    4. git branch feature-branch
    5. # 切换到新分支
    6. git checkout feature-branch
    7. # 或者一步到位(创建+切换)
    8. git checkout -b feature-branch
    9. # 合并分支到主分支
    10. git checkout master
    11. git merge feature-branch
    12. # 删除已合并的分支
    13. git branch -d
    14. # 删除远程分支
    15. git push origin --delete dev
    16. # 提交分支 如果远程没有这个分支他会自动创建这个分支
    17. git push origin feature-branch

     

    1.3.2 结合应用场景使用

    主分支(Master/Main): 主分支是项目的默认分支,通常包含了最新的稳定版本。在许多项目中,主分支的名称是 master 或 main

    1、创建并切换分支:你可以创建一个新的分支,这个分支是从当前工作目录的状态创建的,包含了当前工作目录中的所有文件和文件夹。 

    2、在分支上工作: 在特定的分支上工作时,你可以进行修改、添加新文件等操作。这些操作不会影响其他分支,因为每个分支都有独立的工作目录。

    3、提交分支

    就可在gitee远程仓库中查看了

    在此分支开发的代码与其他互不相干了,若开发完成可与主分支进行合并

    二、Git标签(Tag)

    2.1 标签作用

     标签是一个指向特定提交的引用,通常用于标记版本发布。标签可以使你在不同版本之间轻松切换,而不必记住各个提交的哈希值。

    应用场景:

    • 版本发布: 在发布一个稳定版本时,可以为该提交打上标签,以便将来可以轻松地找到和检出该版本。
    • 历史记录标记: 在项目的关键点上打标签,以便于回顾项目的历史记录。

    2.2 标签规范

    • 在 Git 中,标签的命名规则相对灵活,但有一些推荐的约定和最佳实践:
    • 版本号: 最常见的标签是用于表示软件版本的。使用语义化版本号是一种常见的做法,其中版本号包括主版本号、次版本号和修订号,形式为 MAJOR.MINOR.PATCH。例如:v1.0.0。
    • 前缀: 通常,标签前面加上字母 'v' 作为版本的前缀是一种常见的做法。例如:v2.1.3。
    • 发布候选(Release Candidate): 有时在软件发布前可能有一些预发布版本,可以使用 -rc 或其他类似的标记。例如:v1.0.0-rc。
    • 修订版或修复版本: 有时可能需要对某个版本进行修复,可以通过在版本号后添加修复版本号,如 v1.0.1。
    • 时间戳: 在某些情况下,可以使用时间戳作为标签,特别是在需要唯一性的情况下。例如:v20220101.
    • 语义化标签: 使用能够清晰表达标签目的的语义化标签。例如:release-2.0, feature-new-login, 等。
       

    注意事项:

    避免使用特殊字符,空格或弱引用字符,以免引起不必要的问题。
    标签名称对大小写敏感,因此 v1.0 和 V1.0 是两个不同的标签。
    在使用标签时要保持一致性,遵循项目内的约定。
            总体而言,标签的命名规则是由项目的团队来定义的。选择一种清晰、有意义、易于理解的命名约定对于项目的长期维护和协作是非常有帮助的。
     

    2.3 使用案例

    2.3.1 指令
    1. # 列出所有标签
    2. git tag
    3. # 添加标签
    4. git tag v1.0.0
    5. # 附注标签: 包含标签的名称、邮箱、日期和标签消息。它是一个更详细的标签类型。
    6. git tag -a v1.0.0 -m "Version 1.0.0"
    7. # 删除标签
    8. git tag -d v1.0.0
    9. # 删除远程标签(已推送的标签)
    10. git push origin --delete v1.0.0
    11. # 推送标签
    12. git push origin v1.0.0
    13. # 如果你有多个标签,可以使用 --tags 选项一次性推送所有标签。
    14. git push origin --tags

    推送标签后,其他团队成员可以通过拉取最新的标签来获取项目中的特定版本。例如:

    git pull origin v1.0.0.20231112_dev

    这将获取远程仓库中的 v1.0 标签,并将你的本地仓库切换到这个版本。

  • 相关阅读:
    GBase8s系统表介绍(七)
    ILSpy:Project file is incomplete. Expected imports are missing 错误解决方案
    制造业企业设备管理常见的三个问题及对应的解决方案
    Google Earth Engine(GEE)——NOAA_PERSIANN-CDR全球人工神经网络-气候数据集(降水量)
    20、红外避障模块
    Hyperreal number
    睿趣科技:抖音开网店新手卖什么好
    【nlp】1.3 文本数据分析(标签数量分布、句子长度分布、词频统计与关键词词云)
    无线终端掉线问题专题
    《12万字Java面经总结-MyBatis篇》
  • 原文地址:https://blog.csdn.net/Ying_hao_kun/article/details/134373819