我在python脚本中使用此命令生成一个xml文件,该文件稍后由我们的CI系统处理:
git log -1 --date=iso --pretty=format:"<logentry revision=\"%h\" scm=\"git\">%n<author>%an</author>%n<date>%ad</date>%n<msg>%s</msg>%n"
它以下列格式生成输出
<logentry revision="1e370f5" scm="git">
<author>Johan Govers</author>
<date>2016-02-24 13:11:15 +0100</date>
<msg>PP-204 Try out git PP-207 New build script * Add missing kind="file" to path nodes in changes xml file.</msg>
使用git log -1
会显示包含换行符的消息,但使用漂亮的格式会将其省略。有没有办法产生如下的输出?
<logentry revision="1e370f5" scm="git">
<author>Johan Govers</author>
<date>2016-02-24 13:11:15 +0100</date>
<msg>PP-204 Try out git
PP-207 New build script
* Add missing kind="file" to path nodes in changes xml file.</msg>
答案 0 :(得分:7)
documentation for git log
告诉我们%s
适用于主题,它是根据commit message's title(强调我的)构建的:
虽然不是必需的,但最好用一个简短(小于50个字符)的行来概括更改,然后是空白行,然后是更详尽的描述。 提交消息中第一个空白行的文本被视为提交标题,并且该标题在整个Git中使用。例如,git-format-patch[1]将提交转换为电子邮件,它使用主题行上的标题和正文中的其余提交。
如果您想使用整个提交消息,请尝试改为%B
:
%B:生体(未包裹的主体和身体)