在git中编写长提交消息?

时间:2014-03-29 12:32:13

标签: git

我通常在我的git bash中编写长提交消息,以便稍后阅读我的代码的人可以很容易地看到我做了什么。例如,在设计我编写的表单时,在windows form应用程序的vs2013中的示例。

git commit -m "Add Name,age ,height,weight and salary labels with corresponding text boxes and more over a Submit Button..."

问题是当我输入git log --oneline时,它没有显示整个信息并切断了部分信息。 我的问题是,在git中编写长提交消息的方法是什么,限制是什么以及如何显示它们以便可以在git bash上轻松看到所有消息?

1 个答案:

答案 0 :(得分:13)

git显示日志消息的方式是它将占用第一行并在git log --oneline中使用它,然后在使用普通git log时显示任何其他内容,只要有一个空行在第一和第二部分之间:

Add summary line here

An example of how to write long commit messages.
Blah blah blah blah blah.
SKADOOSH!

许多人使用它来使用第一行作为提交更改摘要的标准,并保持最长50个字符,以便在使用{{1}时适合}。这实际上是Linux内核和git项目维护者自己使用的标准(GitHub也会提升它)。

您可能会觉得50个字符太短,因此您可以使用的另一个标准是将摘要保持为最多72,78或80个字符。

对于提交消息的其余部分,将最大行长度保持为72,78或80个字符最大值也会有所帮助,就像您经常将显示器屏幕分成一半的终端和浏览器或编辑器一样另一半。许多编辑器都有快捷方式,可以自动将长行自动换行到最大列长度。

例如,在Sublime Text中,命令为git log --oneline --graph + ALT + CMD。 Vim还有一些快捷方式可以执行此操作(q是其中之一),但您需要配置最大行长度才能使其正常工作。 Sublime Text也是如此。