1

我在master中有工作代码。我需要创建一个新的应用程序作为一个新的分支,它具有额外的功能,这与 master 中已有的功能相似。我还需要不时合并从主分支到新分支的更改。

我尝试了以下方法:

  1. 单独创建新类,尽管它们具有相似的功能 + git merge master 没有问题
    • 有重复的代码
  2. 为通用功能创建抽象类,然后从它继承旧的主类和新的分支类+没有重复的代码
    • git merge master 存在永​​久性问题
  3. 它是 #2 的修改 - 将抽象类移动到 master 分支 - 解决了上述两个问题,但是
    • master 中有不必要的(抽象)代码

那么首选哪种方式呢?还是有正确的(另一种)解决方案?

更新:
添加了#3。

4

1 回答 1

2

理想的解决方案是隔离子模块中的抽象类,并使父仓库(具有 master 和您的新应用程序分支的仓库)使用所述子模块。
即在子模块(它本身是一个单独的 git repo)所在的子目录中查找公共类。

这样,您就可以分开:

  • master和app的合并
  • 通用类的演变(在他们自己的 git repo 中完成,在你的主 repo 中作为子模块导入)
于 2012-06-27T11:37:54.167 回答