我们都很讨厌这样的commit信息:
git commit -m 'update'
因为你看到这个commit信息,不能知道这次的提交究竟是为了什么。是修复了什么bug?是增强了什么功能?等时间久了,需要找以前的某一个提交检查问题的时候,无从下手。
commit信息应该能让人一眼看出这次提交的代码解决了什么问题。下面是一个模板:
[#id] title
[问题描述]
1. ...
2. ...
[问题原因]
1. ...
2. ...
[解决方案]
1. fix ...
2. enhance ...
编号后面是对这一次提交的总结性标题。从第三行开始,是本次提交的详细信息,解决的是什么问题,问题是什么原因,如何解决。
这个信息虽然确实很详细,但是如果每一次都要保持这个格式,未免有些麻烦。因此,可以使用git commit的信息模板来自动生成信息。
首先在创建一个文件: ~/.gitmessage
, 其内容如下:
[#id] title
[问题描述]
1. ...
2. ...
[问题原因]
1. ...
2. ...
[解决方案]
1. fix ...
2. enhance ...
接下来,打开配置文件: ~/.gitconfig
,在末尾增加两行内容:
[commit]
template = ~/.gitmessage
保存配置文件。
下一次,当你执行命令: git commit
时,就会看到信息模板了。