git format-patch包含列表文件而不是编号文件

时间:2016-10-14 17:09:41

标签: git

git format-patch通常会生成如下命名的补丁文件:

0001-Something.patch
0002-Whatever.patch

相反,我想生成带有提交消息的补丁文件名,但没有数字:

Something.patch
Whatever.patch

以及按正确顺序列出所有修补程序的单个文件。

我还需要一个等效的git am来应用这些补丁。

可以git这样做吗?如果没有,你会用脚本或其他什么来做呢?

1 个答案:

答案 0 :(得分:1)

Unix-like系统上,您可以执行此操作以删除第一个-之前的初始号码:

$ git format-patch  120c547..2b05980  | while read x; do mv "$x" $(echo "$x" | cut -d '-' -f2-); done

您可以使用git am轻松应用此类修补程序,因为此命令同时将mboxMaildir - cp所有修补程序放入目录并告诉git am在此目录中查找补丁。例如:

$ git am /tmp/patches