Git:向现有补丁系列添加补丁

ubof19bj  于 2023-05-05  发布在  Git
关注(0)|答案(1)|浏览(169)

假设我有一个补丁系列,如下所示:

0000-cover-letter.patch
0001-Patch1.patch
0002-Patch2.patch

现在我想添加0003-Patch3.patch作为该系列的一部分。
我可以这样做:

git format-patch HEAD~1 --start-number 3

然而,这将不会工作,因为封面信补丁将不会更新。
有没有一种方法可以做到以下几点之一,哪一种可以达到同样的目标:

  • 向现有系列添加补丁并自动更新封面
  • 在现有的修补程序列表上生成一封说明信,但不更改它们

P.S:重新生成整个系列(HEAD~3)不是这里的选项,因为当第一个补丁生成时,我用补丁的描述编辑了它们,如果我从头开始重新生成,这些补丁将被删除。

bvpmtnay

bvpmtnay1#

您希望手动添加新补丁到系列中,我认为您应该改进您的补丁系列工作流程。
理想情况下,创建一组新的补丁程序应该非常精简,这样您就不想摆弄比您需要的更多的东西。

保存求职信

求职信应该存放在某个地方。无穷大中的两个选项:

  • 将其存储为分支上的第一次提交,以“空”(没有树更改)提交
  • 所以它存储在提交消息中
  • 将它存储在git-notes(1)消息中(第一次提交?)

存储自由格式注解

您可以在修补程序上存储注解,即既不是提交消息的一部分,也不是补丁本身的文本。它们位于---分隔符和diff的开头之间。
假设有人在之前的评论中要求你在那个提交上做X(错误,补丁)。所以你要注意像这样:

---
Note: I was asked by Timothy to do X in <link>

你可以通过在这个提交上创建一个注解来做到这一点:

git notes edit

上面的留言。将存储为:

---
Notes:
    I was asked by Timothy to do X in <link>

git patch-format输出的最小修改

看起来您(理想情况下)希望将补丁后格式调用工作限制为编辑求职信的主题和正文。如果你把它存储在某个地方,那么它主要就是一个复制粘贴的问题。

相关问题