我的提交内容包含[Hello World]Something.
的消息
然后我使用git format-patch HEAD~1来修补补丁
像这样的补丁内容:
Subject: [PATCH 1/7] [Hello World] Something.
但是在我使用git am应用补丁之后,提交消息只变成了“Something”,[Hello World]似乎丢失了。
如何在应用补丁后将内容保留在“[]”中?
答案 0 :(得分:10)
git am -k
会阻止它删除主题开头的[]
括号中的内容,但这也会保留[PATCH 1/7]
部分。 git format-patch
还有一个-k
选项,可以阻止它添加该类型的内容,从而允许通过git format-patch | git am
周期保留主题。
答案 1 :(得分:1)
我也有同样的担忧,并在下面的链接中找到了解决方案:
http://git.661346.n2.nabble.com/Bug-Incorrect-stripping-of-the-PATCH-prefix-in-git-am-td7643405.html
我们必须将“ am”命令与“ --keep-non-patch”选项一起使用。手册页描述如下:
$ man git am
--keep-non-patch
Pass -b flag to git mailinfo (see git-mailinfo(1)).
$ man 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".