【问题标题】:What is a convenient way of writing a multiline commit message?编写多行提交消息的便捷方法是什么?
【发布时间】:2015-05-19 00:03:38
【问题描述】:

我不想写一个简短的 40 个字符的 Git 提交消息,而是写一个更长的多行消息。

据我了解,我需要在消息“标题”之后添加一个换行符。如何在 OS X 终端或 Win8 CMD 中输入换行符?

【问题讨论】:

  • 我想要一个完整的消息,而不是一个 40 个字符的小 git 消息。 你的问题不清楚。我猜您使用git commit -m "..." 创建提交,但您想编写多行提交消息。正确的? git commit -m "..." 最好保留给简短的(单行)提交消息。为什么不运行 git commit 呢?您的编辑器将弹出,您将能够更轻松地编写和格式化您的提交消息。
  • 40 个字符的限制从何而来?无论您写一行还是多行,提交消息都没有这样的限制。随心所欲地写(即使在第一行)。
  • @axiac 将提交消息的第一行限制为 50 个字符被认为是一种很好的做法;见this
  • @Jubobs 确实,50 个字符被认为是git 本身源代码的良好做法。不知道那个。 OP 的组织可能会考虑良好做法(或强制执行)第一行的长度为 40 个字符。我通常使用大约 80-100 个字符(并认为 this 限制是一种很好的做法),但我有一个大屏幕,我独自工作项目;-)
  • @Jubobs 我不知道 -m 可以被删除。我认为这是提交消息的标准。

标签: git terminal git-commit


【解决方案1】:

你似乎认为 (your follow-up comment confirms this)

git commit -m "<msg>"

是创建提交的唯一方法。 git-commit man page 描述了 -m 标志:

-m &lt;msg&gt;, --message=&lt;msg&gt;
使用给定的&lt;msg&gt; 作为提交消息。如果有多个-m 选项 给出,它们的值被连接成单独的段落。

此标志允许您编写提交消息内联;对于短的(即通常是单行的)提交消息很方便,但对于较长的提交消息就不那么方便了。对于多行提交消息,您应该避开-m 标志并简单地运行

git commit

这将导致您的编辑器弹出并允许您以比在命令行更方便的方式编写和格式化您的提交消息。

请联系relevant section of the Pro Git Book 了解更多详情。

【讨论】:

  • 啊太棒了。那我可以更改我的默认编辑器吗? Vim有点别扭,我的团队没用过?
  • @Koxzi 是的,当然;见this。但是,您应该花一些时间学习 Vim(或 emacs);太棒了。
【解决方案2】:

如果您不放置-m 标志,系统会提示您在默认编辑器中输入消息,您可以在其中轻松输入多行。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-08-25
    • 1970-01-01
    • 2015-04-06
    • 2011-07-03
    • 1970-01-01
    • 2011-02-17
    • 1970-01-01
    相关资源
    最近更新 更多