Git 分支机构变成了产品,现在怎么办?新回购协议?

Git 分支机构变成了产品,现在怎么办?新回购协议?,git,Git,我有了一个回购协议,并开始(像往常一样)在一个分支上尝试创建一个特性。这个分支在这样一个层次上取得了成功,它不再是一个特性,而是独立成了一个项目 此时此刻,我继续以分支的形式运行这两个项目,因为我仍然共享类 不过,我希望有2个存储库,并且能够在它们之间(在两个方向上)共享(cherry pick)commit 我的树看起来像这样: ----*------*--*--*-----*------------------- ... ------- \----*------*--------*

我有了一个回购协议,并开始(像往常一样)在一个分支上尝试创建一个特性。这个分支在这样一个层次上取得了成功,它不再是一个特性,而是独立成了一个项目

此时此刻,我继续以分支的形式运行这两个项目,因为我仍然共享类

不过,我希望有2个存储库,并且能够在它们之间(在两个方向上)共享(cherry pick)commit

我的树看起来像这样:

----*------*--*--*-----*------------------- ... -------
     \----*------*--------*--- ... ------------ 
我厌倦了把它作为一个单独的项目,因为有些文档我不想跟踪,但我必须跟踪,以便在我签出相应的分支时更改它们

我在考虑用它来创建一个新的回购协议,然后在每个回购协议上杀死另一个分支。但我不知道这将如何影响两个回购协议之间的合作(合并或挑选樱桃,或其他)

请就这类任务的适当程序提出任何建议


谢谢你们这些先进的家伙。

我的想法-我会这样做:

  • 创建两个存储库,每个项目一个
  • 不要采摘樱桃。相反,创建一个新项目——可能会产生一个新的存储库,也可能存在于现有的存储库中——并将共享的内容放入新项目中

  • 如果您的两个项目共享一些代码,那么方法可能是将公共功能提取到单独的库中。很有可能你会有另一个项目使用该代码,你无论如何都必须这样做——可能另一个项目需要一些旧版本,或者你想更改API,而你不想调整其他项目


    因此,2个项目存储库,1个库存储库。

    我喜欢这种方法,这是我在开始时认为应该遵循的方法,但代码现在是内在的,因为它将共享类作为基本库取出。并且认为作为第一步,当我创建通用API时,我已经可以将repo分离为2个repo,并在它们之间继续共享提交,直到API准备好。如何用git init将repo从零开始分离,并在其中粘贴特性分支的状态?或者,您会将原来的功能分支分叉并在新的功能分支中重新设置基址到主功能吗?否则。。。