一日一技:为 git commit 设置默认模板

摄影:产品经理 烤鸡 我们都很讨厌这样的commit信息:


git commit -m  'update'

当大量的提交都写着“update”的时候,你根本没法快速知道每个提交改的是什么内容——是修复了什么bug?是增强了什么功能?等时间久了,需要找以前的某一个提交检查问题的时候,无从下手。

commit信息应该能让人一眼看出这次提交的代码解决了什么问题。下面是一个模板:

[#id] title

[问题描述]
1. ...
2. ...
3. ...

[问题原因]
1. ...
2. ...
3. ...

[解决方案]
1. ...
2. ...
3. ...

编号后面是对这一次提交的总结性标题。从第三行开始,是本次提交的详细信息,解决的是什么问题,问题是什么原因,如何解决。

这个信息虽然确实很详细,但是如果每一次都要保持这个格式,未免有些麻烦。因此,可以使用git commit的信息模板来自动生成信息。

首先在创建一个文件:~/.gitmessage, 其内容如下:

[#id] title

[问题描述]
1. ...
2. ...
3. ...

[问题原因]
1. ...
2. ...
3. ...

[解决方案]
1. ...
2. ...
3. ...

接下来,打开配置文件:~/.gitconfig,在末尾增加两行内容:


[commit]
template = ~/.gitmessage

保存配置文件。

下一次,当你执行命令:git commit时,这个模板就会自动弹出来了。