应用Thunderbird的git系列补丁最简单的方法是什么

应用Thunderbird的git系列补丁最简单的方法是什么,git,thunderbird,Git,Thunderbird,我有一封带有N个附件的邮件,格式为000X-xxxx.patch。我想在我的主机上应用所有补丁,但我希望所有的提交都是独立的,因为原始作者提交了它们。当然包括提交消息 方法1:打开电子邮件,单击另存为xxx.eml,然后: git am xxx.eml 结果还可以,但所有内容都被压缩到一个提交中。不可接受 方法2。所有附件都保存在一个目录中,然后: git am 000*.patch Patch format detection failed. git apply 000*.patch (do

我有一封带有N个附件的邮件,格式为000X-xxxx.patch。我想在我的主机上应用所有补丁,但我希望所有的提交都是独立的,因为原始作者提交了它们。当然包括提交消息

方法1:打开电子邮件,单击另存为xxx.eml,然后:

git am xxx.eml
结果还可以,但所有内容都被压缩到一个提交中。不可接受

方法2。所有附件都保存在一个目录中,然后:

git am 000*.patch
Patch format detection failed.
git apply 000*.patch
(does nothing)

这是行不通的。建议?谢谢。

通过阅读
git am
手册页,提交消息似乎是由主题行和消息正文组成的,这意味着您将无法重新创建提交的原始序列(也就是说,没有办法恢复作者在每次提交时使用的提交消息)…尽管根据手册页,
git am
是用来处理内联补丁的,而不是作为附件包含的补丁,所以我很惊讶它即使在方法1中也做得对


如果您愿意放弃提交消息,您应该能够将修补程序保存到单个文件中,然后按顺序应用它们。

据我所知,Thunderbird没有合理的解决方案 将多封电子邮件同时保存为单个文件的方法。您可以 不过,一次只保存一个补丁,这对小补丁集确实有效

具有讽刺意味的是,我无意中发现了最简单的方法,将Linux修补程序发送给一位不遵循邮件列表的同事 给你自己(作为附件)

  • 选择所有修补程序电子邮件
  • 将它们作为附件转发给您自己
  • 将所有附件保存到适当的目录
  • 应用电子邮件。例如“git am my_patch_dir/[patch-v5*”

  • 嗯,但是git apply对我没有任何帮助。好吧,git apply和git am都在单独的附件上工作。我只是在第一行开头有一个“>”。所以雷鸟不知怎么搞砸了。解决了!至少雷鸟52.1.0似乎能够保存多封电子邮件:只需标记多封电子邮件并说“另存为…”在关联菜单中。这允许选择所有标记的电子邮件将保存到的文件夹。除非已更改,否则请使用“另存为”在多封电子邮件的结果中,一个文件包含所有电子邮件,这个大文件根本不适用于git am,AFAICTT这里提到了mbox导出扩展名:|但它似乎与当前的Thunderbird 52.6.0不兼容。