有多个应用程序时,如何组织git仓库?

时间:2019-02-19 01:46:25

标签: git version-control

我有一个由几个组件组成的系统,我希望这些组件在源代码控制下,而且我想知道我可能会采取的不同方式的利弊。

这是情况

  • 与后端通讯的组件

  • 数据库创建脚本(表,视图,函数,存储过程)

  • 三个不同的前端(网页)

最简单的方法是将所有内容都保留在同一存储库中(最常见的情况是,例如,如果我必须向表中添加字段,则必须修改所有内容)。

我没有发现将所有内容保存在不同存储库中的很多优点,但是我已经看到了几个以这种方式组织的应用程序,所以我想我一定会丢失一些东西...

1 个答案:

答案 0 :(得分:1)

我知道为紧密耦合的项目提供多个存储库的唯一优势是,如果您希望它们独立使用,并且相信如果您只有一个存储库,则克隆所有内容都会很昂贵。有人会说拥有独立的历史是有用的,但是经过一段时间后,我从未发现它有用。当您尝试在多个存储库中进行Plug.Test.conn/3样式的调试时,我发现它会引起问题。

如果由于上述原因使用多个存储库,但仍必须经常与它们一起使用,那么我建议创建一个将所有其他存储库都作为子模块的超级存储库。这样,当每个部分彼此之间保持一致时,您至少可以在超级存储库的历史记录中具有快照。

如果常见的情况是一起使用和修改项目,那么它们应该在一个存储库中。我工作过的许多大型科技公司将几乎所有代码都保存在一个大型存储库或几个大型存储库中。