Git提交规范

一. 修改类型

每个类型值都表示了不同的含义,类型值必须是以下的其中一个:

  • feat:提交新功能
  • fix:修复了bug
  • docs:只修改了文档
  • style:调整代码格式,未修改代码逻辑(比如修改空格、格式化、缺少分号等)
  • refactor:代码重构,既没修复bug也没有添加新功能
  • perf:性能优化,提高性能的代码更改
  • test:添加或修改代码测试
  • chore:对构建流程或辅助工具和依赖库(如文档生成等)的更改

二.代码回滚

代码回滚比较特殊,如果本次提交是为了恢复到之前的某个提交,那提交消息应该以

"revert:"开头,后跟要恢复到的那个提交的标题。然后在消息正文中,应该写上"This reverts commit ",其中""是要还原的那个提交的SHA值。

三.影响范围

范围不是固定值,它可以是你提交代码实际影响到的任何内容。例如location、 b r o w s e r 、 browser、 browser、compile、rootScope、ngHref、ngClick、ngView等,唯一需要注意的是它必须足够简短。

当修改影响多个范围时,也可以使用"*"。

四.标题

标题是对变更的简明描述:

  • 使用祈使句,现在时态:是"change"不是"changed"也不是"changes"
  • 不要大写首字母
  • 结尾不要使用句号

五.正文

正文是对标题的补充,但它不是必须的。和标题一样,它也要求使用祈使句且现在时态,正文应该包含更详细的信息,如代码修改的动机,与修改前的代码对比等。

六. 页脚

任何Breaking Changes(破坏性变更,不向下兼容)都应该在页脚中进行说明,它经常也用来引用本次提交解决的GitHub Issue。

Breaking Changes应该以"BREAKING CHANGE:"开头,然后紧跟一个空格或两个换行符,其他要求与前面一致。

七、参考链接

https://github.com/angular/angular.js/commits/master

https://github.com/angular/angular.js/blob/master/CHANGELOG.md

https://github.com/angular/angular.js/blob/master/DEVELOPERS.md#-git-commitguidelines

https://docs.google.com/documen

相关推荐
鶴哥只手遮天7 小时前
第 8 章 工作区与检出:unpack-trees 与并行 checkout
git
xing-xing8 小时前
git 相关命令总结
git
A-刘晨阳10 小时前
GitLab + ArgoCD 实现 Kubernetes GitOps 自动化部署
运维·人工智能·git·kubernetes·自动化·云计算·argocd
ControlRookie21 小时前
SyncBridge:一个 CODESYS 工程与 AI 之间工程师级的同步工具
git·ai编程·codesys·工业软件·controlrookie
鬼手点金1 天前
opencode-性能优化建议
java·人工智能·git·自动化·nanogpt
网络毒刘1 天前
开源 Aider 工作流实战:Git 提交驱动的 AI 结对,与 Cursor 何时互补
git·ai编程·cursor·aider
HRTOS1 天前
HRTOS 4.0 将长期维护:为什么版本号不再频繁变化
经验分享·git·单片机·51单片机
驭渊的小故事2 天前
linux 基础命令 + git 仓库创建和配置命令
linux·git
行者-全栈开发2 天前
华为云码道 CodeArts 实测:让 AI 用 Rust 写一个 Git 仓库健康度体检台「仓衡」
git·rust·tauri·桌面应用·ai 编程·华为云码道·codearts 代码智能体
挖掘狂人4 天前
Git 从 0 到 1:用一个小项目走完 add / commit / reset / merge / rebase / push
git·后端·github