转义git commit消息中的注释字符(#)

car*_*ing 24 git escaping

我已将mcedit设置为git commit消息的编辑器.默认情况下,它会忽略以#字符开头的任何行.不管看起来多么奇怪,我需要能够将我的提交消息看起来像这样:

#FOO-123: Implement bar foo

Committing work in progress
Run Code Online (Sandbox Code Playgroud)

#FOO-123: ...实际上是我们跟踪器中问题的关键+标题.跟踪器可以自动获取这些提交消息并将其添加到问题中.

不幸的是,第一行被视为注释而被忽略.

我不想通过添加来提交命令行,-m因为当你有多行时它不方便/丑陋.

我怎么能解决这个问题?

Von*_*onC 24

您可以尝试在提交消息中为注释定义不同的字符:

git config core.commentchar <another char>
Run Code Online (Sandbox Code Playgroud)

正如我在" 使用hashmark(#)启动git commit消息 "中提到的,此设置自git 1.8.2(2013年2月)起可用.

在你的情况下:

git config core.commentchar "*"
Run Code Online (Sandbox Code Playgroud)

请注意,理论上你可以放一个core.commentchar字(多个字符),但git 2.0.x/2.1会更严格.

提交50b54fd阮泰玉维战(pclouds):

config:在core.commentChar上是严格的

我们不支持评论字符串(至少尚未支持).并且多字节字符编码也可能被误解.

使用两个逗号的测试会更新,因为它违反了此规则.它添加core.commentChar在eff80a9引入的补丁(允许自定义"评论字符" - 2013-01-16).我不清楚为什么要采取这种行为.


poke还在评论中提到更改提交模板:

编辑提交消息时,使用给定文件中的内容启动编辑器.
所述commit.template配置变量经常被用于隐含地给这个选项添加到命令.