我在我的git commit消息中使用了一些私有注释。
例如,当我在模块MOD_A
中修复某些内容时,提交消息如下所示:
FIX [MOD_A] Fixed something
只要FIX
前面有[MOD_A]
,如果我使用
git format-patch
将此补丁作为附件发送到某处,然后使用
git am --keep-cr *.patch
以便将此提交存储在另一个仓库中。
但是:如果我FIX
前面没有[MOD_A]
(即[MOD_A] Fixed something
),则其他消息的开头就会丢失做git am
后的回购。整个提交消息仅为Fixed something
。
我怀疑它与git format-patch
生成的电子邮件主题行的格式有关:
Subject: [PATCH 23/27] [MOD_A] Fixed something
似乎因为[PATCH 23/27]
括在方括号中,所以[MOD_A]
也会被忽略。
有没有办法让我的[MOD_A]
不被忽略?
答案 0 :(得分:3)
如果您可以在没有[PATCH x/x]
的情况下自动添加到主题行,
您可以git format-patch -k
然后git am -k ...
我假设只是将补丁推送到另一个回购不是一个选项
答案 1 :(得分:2)
使用git作为版本“1.8.4”(可能在之前),您也可以使用:git am --keep-non-patch
。它将-b
标记传递给git mailinfo
:
-b
When -k is not in effect, all leading strings bracketed with [ and ] pairs are stripped. This option limits the stripping to only the pairs whose bracketed string contains the word "PATCH".
Emanuele的