基本概述
git apply 的作用是:应用补丁文件
基本用法
1.命令格式
git apply [选项] <补丁文件>
2.应用补丁
git apply patchfile.patch
- 将补丁应用到工作目录,但不会自动添加到暂存区(需手动 git add)
常用选项
1.检查补丁是否可用
git apply --check patchfile.patch
- 仅检查补丁是否能成功应用,不实际修改文件
- 如果无输出,表示补丁可以应用;否则会报错
2.将补丁应用到暂存区(stage)
git apply --cached patchfile.patch
- 将变更应用到暂存区,但不会修改工作区的文件
3.同时应用到工作目录和暂存区
git apply --index patchfile.patch
- 如果补丁包含暂存区信息(如 git diff --cached 生成的补丁),此命令会同时更新工作目录和暂存区
4.忽略路径问题
git apply -p<n> patchfile.patch
- 剥离补丁中的前 n 级目录
- 例如:补丁中的路径是 a/b/c/file.txt,当前目录是 b/c/file.txt,使用 -p1 剥离第一级目录 a/
5.强制应用补丁(允许冲突)
git apply --reject patchfile.patch
- 如果补丁部分冲突,会生成 .rej 文件记录冲突部分,其余部分正常应用
- 需要手动解决 .rej 文件中的冲突