关于开源项目二次开发的一个疑问
在对开源代码进行二次开发的时候,如果上游代码有新的 commit ,究竟是如何跟上上游的功能更新和补丁的?比如 Chromium base 的一些浏览器、国内的各种 Android 定制版,或者是 github 上的一些开源项目的 Fork 。
我能想到的就三种方法
- git upstream
- 导出 patch 文件,更新上游后再打 patch
- 人肉合并
我的理解是可以把二次开发分两类:一类是对源项目进行添加功能,尽量不去修改原来的代码。另一类是对源项目进行了一些深度定制修改。
如果只是打 Mod ,不修改源有代码,那么可以用第一种方法。
如果对项目进行了一些修改是不是只能人肉去合并代码了?