Git学习-04

举报
kwan的解忧杂货铺 发表于 2024/10/01 18:47:15 2024/10/01
【摘要】 1.Git 分支模型经典 Git-Flow两个常驻分支(master & develop),代码开发都在临时分支上进行。需要做好日常管理(如及时删除已合并的临时分支),否则容易导致混乱。 2.主要分支master 主干分支,稳定版代码,生产环境版本代码 (prd 正式环境; Tag)develop 主干分支,开发版代码,dev/qa 环境版本代码 (dev、qa 环境)feature 功能...

1.Git 分支模型

经典 Git-Flow

img

两个常驻分支(master & develop),代码开发都在临时分支上进行。需要做好日常管理(如及时删除已合并的临时分支),否则容易导致混乱。

2.主要分支

  • master 主干分支,稳定版代码,生产环境版本代码 (prd 正式环境; Tag)
  • develop 主干分支,开发版代码,dev/qa 环境版本代码 (dev、qa 环境)
  • feature 功能开发分支 (dev 环境)
  • release 发布分支, 不允许直接修改代码 (uat 环境)
  • hotfix 修复分支 (qa、uat、prd 环境)

3.临时分支

1 版本功能分支(feature)

从 develop 分支创建,用于版本功能开发,完成后要合并回 develop 分支

2 个人特性分支(feature)

从 feature 分支创建,用于个人版本功能开发,完成后要合并回 feature 分支

3 稳定分支(release)

从 feature 功能分支创建,用于预发布环境进行测试及产品验证,完成后要合并回 develop 和 master 分支

4 修复分支(hotfix)

从 master 分支创建,用于预发布 / 生产环境上的 Bug 修复,完成后要合并回 develop 和 master 分支

4.分支清理

1 谁创建谁负责清理

2 临时分支在发布生产环境后清理

5.项目分支

1 新项目需从原工程 gitlab 上 fork, 不允许 checkout 新分支

6.命名规则

  • 创建版本功能分支,名称要以 feature/ 开头,加上产品迭代版本号;如:feature/1.1.3
  • 创建个人特性分支,名称要以 feature/ 开头,加上产品迭代版本号,加上个人标识;如:feature/1.1.3-yy
  • 创建发布分支,名称要以 release/ 开头,加上产品迭代版本号;如:release/1.1.3
  • 创建 Bug 修复分支,名称要以 hotfix/ 开头,加上已发布产品迭代版本号 (即上个版本号);如:release/1.1.2
  • 创建标签 Tag,名称要以 v 开头,加上发布版本号和日期;如:v1.1.3-2022-01-26

Git 是一个开源的分布式版本控制系统,由 Linus Torvalds 创建,用于有效、高速地处理从小到大的项目版本管理。Git 是目前世界上最流行的版本控制系统之一,广泛应用于软件开发中。

以下是 Git 的一些核心概念和功能:

  1. 分布式版本控制:与集中式版本控制系统(如 SVN)不同,Git 允许每个开发者拥有完整的代码库副本,包括完整的历史记录。

  2. 分支(Branching):Git 支持快速创建和合并分支。分支是指向代码库中特定提交的可移动指针。

  3. 合并(Merging):合并是将两个或多个开发历史合并在一起的过程。

  4. 标签(Tagging):用于标记特定的提交,通常用于版本发布。

  5. 暂存区(Staging Area):也称为索引,是准备下一次提交的文件列表。

  6. 提交(Commit):保存项目历史和文件快照的记录。

  7. 远程仓库(Remote Repositories):可以是服务器上的仓库,用于与他人共享代码。

  8. 克隆(Cloning):从远程仓库复制代码库到本地。

  9. 拉取(Pull):从远程仓库拉取最新的代码并合并到本地。

  10. 推送(Push):将本地的提交推送到远程仓库。

  11. 拉取请求(Pull Requests):在分布式开发环境中,用于请求将你的更改合并到主分支。

  12. 分支策略:Git 支持多种分支策略,如 Git Flow、GitHub Flow 等。

  13. 钩子(Hooks):Git 允许在特定事件发生时执行脚本,如提交前、推送前等。

  14. 子模块(Submodules):允许将一个 Git 仓库作为另一个 Git 仓库的子目录。

  15. 工作流:Git 支持多种工作流,如集中式工作流、功能分支工作流等。

Git 的命令行工具非常强大,但同时也有图形用户界面(GUI)客户端,如 GitHub Desktop、SourceTree、GitKraken 等,使得非技术用户也能轻松使用 Git。

Git 通常与 GitHub、GitLab 或 Bitbucket 等在线托管服务一起使用,这些服务提供了额外的功能,如代码审查、持续集成/持续部署(CI/CD)、项目管理工具等。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。