应用场景:没有权限去修改别人的类库,又不想克隆,只想将修改的地方保存下来。常应用于子仓库,submodule。
a,以子仓库为例,修改了一些文件,切换到子仓库目录下:
git diff > ../xxx.patch
将在上级目录下生成一个补丁文件「xxx.patch」。
b,给子仓库打补丁,切换到子仓库目录下:
git apply ../xxx.patch
即可应用补丁。
c,No valid patches in input
Windows下 > 输出的文件可能不是 UTF-8 编码。Git 无法读取不是 UTF-8 编码的补丁文件,所以需要重新将补丁文件以 UTF-8 编码保存。