Lazy loaded image
Git 分支管理最佳实践
Words 788Read Time 2 min
2026-1-19
特性
分支 (Branch)
标签 (Tag)
定义
指向某个提交对象的可变指针
指向某个提交对象的不可变指针
可变性
动态:随新提交不断向前移动
静态:创建后固定指向特定 Commit
用途
并行开发、功能迭代、Bug修复
标记重要历史节点、版本发布
生命周期
临时的(合并后可删除)
永久的(作为版本里程碑)

分支命名规范

主分支
  • master / main:生产就绪代码,严格保护
  • develop:开发主线,集成最新开发完成的功能
临时分支
  • feature/功能描述:新功能开发
    • 示例:feature/user-authenticationfeature/async-handler
  • fix/问题描述:Bug修复
    • 示例:fix/pump-station-alarmfix/memory-leak
  • hotfix/紧急问题:生产环境紧急修复
    • 示例:hotfix/critical-security-patch
  • refactor/重构描述:代码重构,不改变功能
    • 示例:refactor/database-layer
  • test/测试描述:实验性分支
    • 示例:test/performance-optimization
命名原则
  • 使用小写字母和连字符分隔单词
  • 简洁且具有描述性(2-4个单词)
  • 避免使用个人名称(用功能描述替代)
  • 包含issue编号:feature/123-add-login(可选)

常用命令

标签管理与版本号规范

语义化版本号(Semantic Versioning)vX.Y.Z[-预发布标识]
  • X (Major):重大变更或不兼容的API修改
    • 示例:v1.0.0 → v2.0.0
  • Y (Minor):新增向下兼容的功能
    • 示例:v1.2.0 → v1.3.0
  • Z (Patch):向下兼容的问题修正
    • 示例:v1.2.3 → v1.2.4
  • 预发布标识(可选):
    • alpha:内部测试版(v1.0.0-alpha.1)
    • beta:公开测试版(v1.0.0-beta.1)
    • rc:候选发布版(v1.0.0-rc.1)
标签类型
  • Lightweight Tag:简单指针,快速标记
  • Annotated Tag:包含完整元数据(作者、日期、说明),推荐用于正式发布
标签命令
版本发布流程
  1. 确认代码已合并到 master 并通过测试
  1. 创建注释标签:git tag -a vX.Y.Z -m "版本说明"
  1. 推送标签:git push origin vX.Y.Z
  1. 在代码托管平台创建 Release(附带 Changelog)
上一篇
Data Structure and Algorithm
下一篇
用面试拷问嵌入式技术栈

Comments
Loading...