我尝试将f2fs文件系统驱动程序从linux-3.13-rc4反向移植到运行3.7.10-1的工作站,其中f2fs尚不存在。我首先尝试简单地将fs / f2fs目录复制到我的工作站,但是由于一些内部vfs帮助程序在3.7和3.13之间发生了变化,因此无法编译。所以我尝试使用
获取fs / f2fs的完整git历史记录git format-patch 39a53e0ce0df01b3cf4bb898c7ae2fd2189647d5 ^ fs / f2fs /
所提到的提交(“f2fs:add superblock and major in-memory structure”)是创建fs / f2fs /目录的提交,然后
git am * .patch
这里,git am不成功:某些提交不适用,因为它们已经应用(git format-patch生成的修补程序中有相同修补程序的两个副本)或者因为修补程序丢失(结果合并)。我想在我的副本中获取历史记录,以便能够进行bissect,然后删除vfs_helper引起的更改,同时保留稍后的错误修复。
任何提示?
答案 0 :(得分:1)
扩展sun
对相关问题Git: How to create patches for a merge?的回答,我终于找到了解决方案:
git log -p --pretty=email --stat -m --first-parent --reverse \ 39a53e0ce0df01b3cf4bb898c7ae2fd2189647d5^..master fs/f2fs/ | \ csplit -b %04d.patch - '/^From .*$/' '{*}' rm xx0000.patch
这会将名为xx0001.patch的补丁创建到xxnnnn.patch,可以使用
git am *.patch