IDEA 中 Git Commit message 编写

IDEA安装插件 Git Commit Template

1. Header
Header的部分只有一行,包括三个字段: type(必需), scope(可选), subject(必需)

对应到idea插件上图的配置分别为 Header部分的:

type(必需) Type of change commit类别
scope(可选) Scope of this change commint影响的范围
subject(必需) Short description 简短的描述
(1)type用于说明 commit 的类别,只允许使用下面7个标识
feat:新功能(feature)
fix:修补bug
docs:文档(documentation)
style: 格式(不影响代码运行的变动,空格,格式化,等等)
refactor:重构(即不是新增功能,也不是修改bug的代码变动)
perf: 性能 (提高代码性能的改变)
test:增加测试或者修改测试
build: 影响构建系统或外部依赖项的更改(maven,gradle,npm 等等)
ci: 对CI配置文件和脚本的更改
chore:对非 src 和 test 目录的修改
revert: Revert a commit
(2) scope
scope用于说明 commit 影响的范围,比如数据层、控制层、视图层等等,视项目不同而不同。

(3) subject
subject是 commit 目的的简短描述,不超过50个字符。

以动词开头,使用第一人称现在时,比如change,而不是changed或changes
第一个字母小写
结尾不加句号(.)
2. Body
Body 部分是对本次 commit 的详细描述,可以分成多行。下面是一个范例。

More detailed explanatory text, if necessary. Wrap it to
about 72 characters or so.

Further paragraphs come after blank lines.

- Bullet points are okay, too
- Use a hanging indent

有两个注意点。

(1)使用第一人称现在时,比如使用change而不是changed或changes。

(2)应该说明代码变动的动机,以及与以前行为的对比。

3. Footer
Footer 部分只用于两种情况。

(1)不兼容变动

如果当前代码与上一个版本不兼容,则 Footer 部分以BREAKING CHANGE开头,后面是对变动的描述、以及变动理由和迁移方法。

BREAKING CHANGE: isolate scope bindings definition has changed.

To migrate the code follow the example below:

Before:

scope: {
myAttr: ‘attribute‘,
}

After:

scope: {
myAttr: ‘@‘,
}

The removed `inject` wasn‘t generaly useful for directives so there should be no code using it.

(2)关闭 Issue

如果当前 commit 针对某个issue,那么可以在 Footer 部分关闭这个 issue 。

Closes #234
1
也可以一次关闭多个 issue 。

Closes #123, #245, #992
1
示例

————————————————
版权声明:本文为CSDN博主「PostTruth」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/itguangit/article/details/99590995

原文地址:https://www.cnblogs.com/kexianting/p/11669100.html

时间: 2024-10-12 10:38:10

IDEA 中 Git Commit message 编写的相关文章

git第四节----git commit message

@git  commit message 什么是git commit message :git commit -m '每次提交时编辑的内容' git commit message的好处:      1.提供更多可查询的信息,用于排查问题      2.过滤重要的内容      3.生成changelog     commit message组成包括header,body,footer三个部分,一般只使用header    header 包含三个部分:type,scope,subject     

如何写好Git Commit Message

https://chris.beams.io/posts/git-commit/ The seven rules of a great Git commit message Keep in mind: This has all been said before. Separate subject from body with a blank line Limit the subject line to 50 characters Capitalize the subject line Do no

git使用总结(包含git commit message 和 changelog 工具的介绍)

[git的配置] 1.配置用户名和邮箱: 分为全局配置和局部配置 --system 系统配置  --global 全局配置    --local 局部配置 Git读取时:优先从local>global>system git config --global user.name name git config --global user.email email 2.别名的配置 使用git st 代替 git status git config --global alias.st status 配置

commitizen和cz-customizable配置git commit message

起因 团队对提交的commit message格式有约定俗称的要求,但是没有一个统一的规范,导致大家提交的commit message或多或少不太一样.因此,需要一个工具来帮助大家统一commit message的格式,也方便后续的分析和拓展. commitizen commitizen 是一个帮助规范commit message的工具.安装后的效果如下图: 安装commitizen npm install -g commitizen 安装adapter commitizen根据不同的adapt

通过git rebase修改commit message

今天发现一个项目的git commit message中的单词拼错了,需要修改一下.但这样简单的修改,需要通过git rebase才能完成. 首先要git rebase到需要修改message的那个commit的前1个commit.假设commit id是32e0a87f,运行下面的git rebase命令: git rebase -i 32e0a87f 在git bash中运行上面的命令后,会弹出编辑框,在编辑框中会分行依次显示以pick开头的这个commit之后的所有commit messa

Git工程实践(一)巧用commit message

摘要: 大家都知道所有的版本控制系统比如svn,git等设计的核心价值之一就是为了让代码变更有迹可循,而commit mesage的价值在于让有迹可循的代码对人类更加友好,通常一个恰如其分的commit message表达的信息往往先于代码. 背景 大家都知道所有的版本控制系统比如svn,git等设计的核心价值之一就是为了让代码变更有迹可循,而commit mesage的价值在于让有迹可循的代码对人类更加友好,通常一个恰如其分的commit message表达的信息往往先于代码. 而现实的工程实

规范git commit提交记录和版本发布记录

在开发过程中我们一般都会用到git管理代码,在git commit提交代码时我们一般对git commit message随便写点简单的描述,可是随着项目参与人数的增多,发现提交的commit记录越来越杂乱,不便查阅,在网上找了下解决方案,总结一下方便在公司项目中运用. commit message 格式 目前大家比较认可的是Angular团队的提交规范,很多工具也是基于此规范开发的.该提交规范格式如下: <type>(<scope>): <subject> <B

git commit -am 合并操作

二,合并的操作 1, 首先按需修改文件 echo >> lz66303.txt 2, 然后按需提交被修改的文件到HEAD缓存区,并把这个修改记录到分支中 git commit -am"This is a commit created by lz66303." 总结 其实这人喜爱的命令git commit -am""也不是那么万能呀! 好我们查看一下帮助命令git commit -h -a, --all    commit all changed file

git init,git add和git commit三者的区别和使用

git init(版本库初始化命令) $cd /usr/local $mkdir demo $cd demo $git init 之后可以在demo目录下看到看到一个.git隐藏文件夹,这个文件夹就是版本库,而demo目录及其子目录就是工作区. git add(将工作区文件提交到暂存区stage) $touch welcome.txt $git add 文件welcome.txt从工作区被提交到暂存区,但此时文件并没有真正进入到版本库当中,文件目前只处于一个中间状态. git commit(将暂