【问题标题】:Git apply patch to specific file outside of git repoGit将补丁应用于git repo之外的特定文件
【发布时间】:2021-09-09 11:41:58
【问题描述】:

我有两个文件,x_original.txtx_updated.txt

我使用以下命令获取补丁文件:

git diff --no-index x_original.txt x_updated.txt > fix_something.patch

我现在想将此补丁应用到名为 x.txt 的文件中。

以下是值得注意的:

  • x.txt 不在 git 仓库中
  • 文件名x_original.txtx_updated.txt 包含在fix_something.patch 中,这毫无意义,因为当我应用补丁时这些文件将不存在

我可以使用什么 git 命令来应用这个补丁?或其他实用程序(如有必要)?我应该对补丁文件进行哪些修改?

【问题讨论】:

  • x_original.txt 是有意义的,因为您应用补丁的文件需要等于 x_original.txt,因为它是在制作补丁文件时。
  • @andlrc 我想将它应用到一个文件,不管它的名字。
  • 我明白,我只是说你需要知道补丁是从哪个文件制作的,以便知道将它应用到哪个文件。在您的情况下,您无需查看文件名,因为您只需提供需要修补的文件,如下面的答案所示。
  • @andlrc 是的,这就是想法:)

标签: git patch git-patch


【解决方案1】:

found out如何使用patch命令:

patch -p1 x.txt fix_something.patch

此实用程序似乎忽略了补丁文件中指定的文件名,因此无需修改任何内容。

【讨论】:

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