切换内核时本地修补程序库

问题描述 投票:1回答:1

我是git的新手,我的场景如下:我在私有项目中对Linux内核进行了补丁。我希望我的本地存储库能够保存这些补丁。不是整个内核。我不是在谈论.patch文件,而是保存我实际上正在改变的文件。

因此,当我想将它们应用于不同的内核时,我只需将它们拉入第二个内核文件夹即可。

现在问题是:我需要能够偶尔切换基础树,或者,为了简化方案,我希望能够拉出一个不同的树并将我的补丁 - repo拉入其中。

但实际的第二个内核是一个回购,我的补丁也是一个回购。所以我不能将它们组合在同一个文件夹中,同时仍然对两者都有源代码控制。

有没有办法粘贴回购或告诉git一个是父,一个是孩子,它会自动合并并自动拉出一切?

关心大卫

git linux-kernel
1个回答
1
投票

有没有办法粘贴回购或告诉git一个是父,一个是孩子,它会自动合并并自动拉出一切?

这基本上是git submodule的目的,但他们不会自动合并。子模块必须至少位于主仓库中的给定子目录中。

但是,如果您的Linux黑客不是修补现有的官方文件,而是编写可以使用insmod或modprobe加载的独特内核模块,那么您根本不需要在内核树中进行开发。只需指定一个常规目录,在其中您将进行所有开发,然后请求顶级linux makefile从此处为您编译:

make -C /lib/modules/`uname -r`/build M=`pwd` modules
© www.soinside.com 2019 - 2024. All rights reserved.