如何在初始提交上使用git format-patch

26

我需要获取非空的初始提交(patch file)文件,以进行我们的审查流程,但我感到困惑的是git format-patch命令仅从位于初始提交之后的分支中生成文件。

看起来这应该是一些显而易见的操作,但我完全搞不清楚该怎么做。

3个回答

29

尝试使用git format-patch --root $SHA(其中$SHA是第一个提交)


1
它仅适用于从第一个提交获取补丁文件。当从所有历史记录中获取补丁文件时,需要两个步骤:1)从初始提交获取补丁文件并应用它。然后通过运行“git format-patch $ {SHA1_of_initial_commit}..HEAD”获取补丁文件,并将它们应用。 - shawnzhu

8

如果要为单个提交创建补丁,请使用以下命令:

git format-patch -1 HEAD # where "1" is a number, not "ell".

“HEAD”可以更改为任何其他提交,甚至哈希代码。即使HEAD是第一次提交,这也有效。我不确定您是否需要这个。


4
也许这已经改变了,但是
git format-patch --root

我刚刚创建了所有补丁文件,包括初始提交和 HEAD。我的 git 版本是 2.26.2.windows.1


是的!非常好。正如帖子所说,这会从初始提交到最新提交处理所有提交。我刚在git版本2.34.1.windows.1上运行了这个命令。谢谢。 - Phil Whittington

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接