如何使用一个框架项目git版本控制多个项目?

时间:2015-04-08 13:53:34

标签: git svn projects repository multiple-repositories

好吧,我看了一下这篇文章GIT Version Control setup for multiple projects with shared code,但事实证明我并不认为它完全符合我的要求,因为这太复杂了(我猜)我需要的东西。

我在一家公司工作,我们有超过4个项目。它们目前仅由SVN在一个存储库中进行版本控制。我们正在转向GIT,我发现了许多关于GIT或SVN的技术答案,但我正在寻找的是关于版本控制的一般用法的理论答案。

我们的一个项目是一个插件,我们将其用作几乎所有项目的框架。插件在项目中是共同的,但它是唯一的共同点,因为其他项目彼此绝对不同。

有时我正在处理一个项目,我必须更改我们用作其他项目框架的插件中的某些内容,例如为项目提供多租户支持,而其他人可能会在同时在另一个项目中工作并在框架插件中更改某些内容。

我上面描述的情况使我认为我不能将每个项目放在不同的存储库中,因为它们都需要框架插件。然而,所有的项目都是完全不同的,这让我觉得我应该把它们托管在一个不同的存储库中。

问题是:我应该为每个回购使用一个回购,还是为每个回购使用一个回购?

1 个答案:

答案 0 :(得分:1)

只要您已经开始向Git迈进 - 不要停止! Git有一个submodules的概念,你可以发现它在你的情况下非常有用。

另外,恕我直言,对所有代码都有一个回购并不是一个好主意,因为它是good practice to have one repo per app

根据您为您使用的语言,尝试创建一个"库"来自每个共享代码库,并从该堆栈可用的dependency management中获益。