【问题标题】:How to use git format-patch on initial commit如何在初始提交时使用 git format-patch
【发布时间】:2012-06-27 05:00:49
【问题描述】:

我需要为我们的审核过程获取初始提交的补丁文件(不为空),但我很困惑,因为git format-patch 命令只从初始提交的分支中生成,不包括它。

似乎这一定是一些明显的举动,但我完全想念它。

【问题讨论】:

    标签: git format-patch


    【解决方案1】:

    试试git format-patch --root $SHA$SHA 是第一次提交)

    【讨论】:

    • 它仅适用于从第一次提交中获取补丁文件。从所有历史中获取补丁文件时,需要两个步骤:1)从初始提交中获取补丁文件,应用它。然后通过运行git format-patch ${SHA1_of_initial_commit)..HEAD获取补丁文件,应用它们。
    【解决方案2】:

    为单个提交制作补丁只需使用

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

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

    【讨论】:

      【解决方案3】:

      也许这已经改变了,但是

      git format-patch --root
      

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

      【讨论】:

      • 是的!这很好。正如海报所说,从初始提交到最近的所有提交都是如此,我刚刚在 git 版本 2.34.1.windows.1 上运行了这个,谢谢
      猜你喜欢
      • 2011-12-11
      • 2018-07-02
      • 2010-10-11
      • 1970-01-01
      • 2013-04-24
      • 2011-01-16
      • 2011-10-03
      • 2013-05-17
      • 1970-01-01
      相关资源
      最近更新 更多