我有两个项目和一个框架。我的框架现在在bitbucket上。我的框架处于开发模式。我每天承诺并推动。
我也会用bitbucket来控制这两个项目。我已经有3个回购
FW prjA prjB
每个prjA和prjB的回购都会有fw的副本。我如何为每个项目设置可以拉出新版本的框架并单独提交?
答案 0 :(得分:3)
您可以将框架项目设置为prja
和prjb
项目中的子模块。
来自the git book:
Git的子模块支持允许存储库作为子目录包含外部项目的结帐。
从prja
和prjb
的根目录中执行:
git submodule add git://path/to/your/fw.git path/to/fw
第一条路径是fw
git存储库所在的位置,第二条路径是您希望fw
进入使用它的项目的位置。
来自the Pro Git book的更多信息:
经常发生在处理一个项目时,您需要使用其中的另一个项目。也许它是第三方开发的图书馆,或者您正在单独开发并在多个父项目中使用的库。在这些场景中出现了一个常见问题:您希望能够将这两个项目视为独立的,但仍然可以在另一个项目中使用。 [...] Git使用子模块解决了这个问题。子模块允许您将Git存储库保存为另一个Git存储库的子目录。这使您可以将另一个存储库克隆到项目中,并使您的提交保持独立。
答案 1 :(得分:1)
您不需要3个存储库。我认为prjA
和prjB
仅用于测试您的框架。您可以尝试创建2个单独的分支,一个用于prjA,另一个用于prjB。让框架成为您的master
分支。如果你愿意的话,你可以在本地保存3份相同的回购(对于prjA,prjB和fw开发)。只要您提交master
分支,就可以rebase prjA and prjB
。