嗨,首先要提前感谢,我有一个与项目结构有关的问题。
想象一下以下情况:我们有4个主要具有相同功能的应用程序。让我们称它们为A,B,C和D.每个人都在Swift / Objective-C中本地构建。我们可以假设A,B,C和D之间几乎85%的代码是相同的。资源相同但可能具有较低的百分比。
我现在拥有的是一个git项目,至少有4个分支(每个应用程序一个)。当我在应用程序A中开发新功能时,我使用git checkout --patch A <filename>
将我感兴趣的更改带给其他应用程序。这个过程很慢,因为我必须做同样的3件事来改变所有其他3个分支。想象一下,应用程序内部的Swift版本已经升级,几乎所有文件都需要更新...这样做比使用4次更好,但仍然很慢。
处理这个问题的方法是否最佳?在iOS中,由于包名称与代码文件所在文件夹的名称无关,这确实是一个选项(慢,但是一个选项),但是如何在Android中实现这一点?具有几乎相同代码的相同Activity位于分支A和B之间的两个不同路径(com.company.A.Activiy和com.company.B.Activiy)中,因此checkout --patch
不起作用。有解决方案吗任何最佳方式?
提前致谢!!!
对于那种情况,我会提取应用程序的核心,这对于所有项目都是相同的,然后在它自己的库项目中,然后在4个项目中的每个项目中引用该库。该库中的任何更改只需要在4个UI项目中重新编译。