繁体   English   中英

将补丁应用为提交而不更改提交的消息?

[英]Apply patch as commit without changing the commit's message?

为了将补丁应用为提交https://stackoverflow.com/a/2250170/1778275建议使用:

git am --signoff < a_file.patch 

但是,它会更改git log中的提交消息:

yyy

Signed-off-by: Name Surname <local-part@domain_name>

而原始提交的消息是:

[xxx] yyy

问题:如何保留原始提交的消息?

UPD。 是的,我知道git commit --amend 但是,有什么方法可以避免使用任何额外的命令?

您拥有的命令有两件事。 首先, --signoff命令添加以Signed-off-by开头的行。 一些项目,如 Git 和 Linux,使用它来跟踪补丁的来源并验证每个人都同意许可条款。 但是如果你不想要这种修改,比如说,因为你的项目没有使用那种机制,那么你可以省略它。

此外,默认情况下, git am通过删除括号中的项目来清理主题行。 这是因为在典型的邮件列表工作流程中,经常使用 header 之类的[PATCH] ,因此用户可以轻松找到补丁,但这不是提交消息的一部分。 如果您不想完成此剥离,可以使用--keep ,并且 Git 不会剥离括号之间的数据。 如果您只想剥离文字文本[PATCH] ,请改用--keep-non-patch

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM