【问题标题】:Why is git apply of a patch with binary files not creating the binary files?为什么 git apply 使用二进制文件的补丁不创建二进制文件?
【发布时间】:2016-04-22 06:20:18
【问题描述】:

我有一个带有两个二进制文件的 git 补丁(它是库,新添加的)。我尝试应用补丁,但未创建二进制文件。我用--binary 选项尝试了git apply。是否有任何其他选项可以从 git patch 添加二进制文件?我只需要二进制文件。

【问题讨论】:

    标签: git binary diff patch


    【解决方案1】:

    --binary 选项在您创建补丁文件时使用,而不是在您应用它时使用。

    这意味着,您必须改为:git diff branch1 branch2 --binary > patch-file,而不是您当前的 git diff branch1 branch2 > patch-file。然后,以与您相同的方式应用带有git apply patch-file 的补丁。

    【讨论】:

      【解决方案2】:

      我用 --binary 选项尝试了 git apply。

      这不会影响任何事情:git apply man page 提到:

      从历史上看,我们不允许在未经用户明确许可的情况下应用二进制补丁,而这个标志就是这样做的方式。目前我们总是允许二进制补丁应用,所以这是一个空操作。

      所以请检查您的 git status 和您的 repo 的权限,以及您的 git 版本。
      作为测试,请尝试将该补丁应用到新的存储库中。

      【讨论】:

      猜你喜欢
      • 2020-07-21
      • 2010-12-29
      • 2020-09-25
      • 2011-05-27
      • 1970-01-01
      • 2012-01-25
      • 2020-08-03
      • 2017-12-24
      • 2011-10-14
      相关资源
      最近更新 更多