无法在非存储库源树中使用 git 应用补丁文件

Unable to apply patch file using git in non-repository source tree

根据 Pro Git 书,可以将补丁文件仅应用于工作目录,git 数据库中没有更改,如果没有这些选项,该命令将应用补丁仅适用于文件,并且不需要它们位于 Git 存储库中。 已寻址的文件不需要受版本控制,也不需要添加到暂存区。项目的源代码树也不需要是 git 存储库。

我无法应用收到的补丁文件。情况可能在某种程度上是特定的。下面详细介绍。

<path>/kernel$ git apply -v --stat patch_files__view_private_files/my-patch-file.patch 结果是 0 files changed, 0 insertions(+), 0 deletions(-)

使用git成功应用补丁文件的先决条件是 在这种环境下没有实现? 至于以上情况是git应用补丁文件的好选择吗?

您可能需要使用 git apply --directory=kernel

git apply 假定路径是相对于存储库根目录的,无论您 运行 它来自哪个目录。