在git中写长的提交信息?

29

我通常在git bash中编写长的提交信息,这样稍后阅读我的代码的人就可以轻松地看到我做了什么。例如,在Windows表单应用程序中设计表单时,我会写以下内容。

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上轻松地看到?


3
另请参阅Git提交信息:50/72格式设置 - user456814
1
可能是如何换行git提交注释?的重复问题。 - user456814
搜索“git提交格式”即可获得数百个解释。这个链接是相当好而且简短的:https://dev59.com/L10a5IYBdhLWcg3wW3rN#50397345 - NeilG
我不明白为什么有些人在散文中使用逗号时会发现保持一致的间距很困难?既然你花了这么多精力研究正确的git提交消息格式,为什么不能费心打出“添加姓名、年龄、身高、体重和薪水”而不是“添加Name,age,height,weight和salary”呢?我认为你已经涵盖了所有可能的变化,只有四分之一是正确的。你甚至没有对名词使用一致的大小写。我并不是想无礼,我只是想理解,因为有相当多的人都这样做。能否请你解释一下,@naseer? - NeilG
1个回答

36
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个字符以内,以便在使用git log --oneline --graph时能够适应。这实际上是Linux内核和Git项目维护者自己使用的标准(GitHub也推广它)。

你可能觉得50个字符太短了,因此你可以使用另一个标准,将摘要保持在72、78或80个字符以内。

对于提交消息的其余部分,将最大行长保持在72、78或80个字符以内也会很有帮助,例如如果你经常将显示器屏幕分成一个终端和一个浏览器或编辑器的两半。许多编辑器都有快捷键,可以自动换行到最大列长度。

例如,在Sublime Text中,命令是ALT+CMD+q。Vim也有一些快捷键可以做到这一点(其中之一是gq),但你需要为其配置最大行长才能使其正常工作。Sublime Text也是如此。


10
同时,将长度限制在50个字符可以鼓励提交更小的代码,这有助于更容易地进行调试。 - f1lt3r
这个答案似乎没有考虑历史实践和建议。最初的建议是在初始行中使用50个字符,然后是一个空行,然后是后续行限制为72个字符。这被称为“50/72格式”。关于此问题,以下是更好的答案:https://dev59.com/L10a5IYBdhLWcg3wW3rN#50397345 - NeilG

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接