【问题标题】:Applying git patches from a mailing list从邮件列表应用 git 补丁
【发布时间】:2014-09-11 10:08:30
【问题描述】:

我需要将补丁(来自邮件列表)应用到本地 git 存储库中

邮件列表中的补丁包含封面消息和有关它的简要信息。我可以将适当的补丁文本复制粘贴到文件中并将其用作补丁。如果可能的话,有人可以建议一个更好的选择吗?

【问题讨论】:

  • 你试过man git-am吗?
  • 不,git-am 将接受使用 format-patch 创建的补丁,但我使用 git commit 创建,添加了提交消息但从未使用过 format-patch .. 它是否可以在没有 format-patch 的情况下创建补丁也是?

标签: git patch mailing-list


【解决方案1】:

您可以选择git applygit amgit mailinfo

git mailinfo 命令将处理电子邮件并将补丁与日志分开,但通常您可以简单地使用git am。另请注意--scissors

--剪刀

在剪刀线之前删除正文中的所有内容。主要由剪刀(“>8”或“8

【讨论】:

    【解决方案2】:

    如果您确实使用 [git am][1],请不要使用任何“剪刀”标记(使用 [-c/--scissor 选项][2])

    仅使用-- >8 --

    随着 Git 2.29(2020 年第四季度),“剪刀线”的解释得到了澄清。

    参见 Evan Gates (deepcube)commit 287416d(2020 年 9 月 28 日)。
    (由 Junio C Hamano -- gitster -- 合并到 commit 9839cce,2020 年 10 月 4 日)

    Doc: 显示剪刀线示例

    签字人:埃文·盖茨

    文字试图说明代码接受许多看起来像剪刀和穿孔标记的变体,但提供的细节太少,用户无法自行决定什么是剪刀线,什么不是剪刀线。

    不要更多地描述启发式方法,而只是说明将始终被接受的内容,即“-- >8 --”,因为这无助于用户给他们更多的选择和灵活性以及在他们的剪刀线中“创造性”。

    git mailinfo 现在包含在其man page 中:

    在剪刀线之前删除正文中的所有内容(例如“-- >8 --”)。 线代表剪刀和穿孔标记,用于 要求读者剪掉该行的信息。 [1]:https://git-scm.com/docs/git-am [2]:https://git-scm.com/docs/git-am#Documentation/git-am.txt--c

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-07-01
      • 2015-05-21
      • 2017-07-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-08-13
      相关资源
      最近更新 更多