在平时有代码移植或合入芯片厂商或板卡商的代码时,我们就可能要用到打补丁技术。
1. 两种补丁方案
Git提供了两种补丁方案,分别patch和diff。
diff
git diff 生成的是UNIX标准补丁.diff文件。只会记录文件改变的内容,不会带有commit记录信息,多个commit可以合并成一个diff文件。
patch
git format-patch生成的是Git专用.patch文件。带有记录文件改变的内容和commit记录信息,每个commit对应一个patch文件。
2. 生成patch文件常用命令
2.1 找到commit id
在生成补丁文件前,一般要通过git log命令找到commit id,如果下图所示:

2.1 某一笔提交的patch
git format-patch commitID -1
例如:
git format-patch 255867fabcf79246d948fadfebe307f8a848bff4 -1

2.2 某笔提交(包含)之前的几次提交
git format-patch