我最近加入了一个组织,面临着git repo结构的问题。保持git存储库结构的最佳方法是什么:
在一个存储库中完成项目(前端(Angular,Html),后端,Android和iOS单回购)
为每个平台创建一个单独的仓库。 在早期的组织中,我们过去遵循第二种方法为每个平台创建单独的仓库,但在当前的平台上,我们的架构工程师告诉我,为所有平台保留单个仓库更好。
git上有很多关于每个平台单个回购的好项目示例:
但我没有找到任何关于着名图书馆的例子作为多个项目的单一存储库。
任何人都可以解释这两种方法的确切优缺点以及最佳解决方案是什么? 如果有人能在这里帮助我,那真是可感谢,提前谢谢。
答案 0 :(得分:0)
Unlick Subversion,适用于单个整体项目,Git最适合小型项目。
原因是Git的冲突范围是整个存储库。在推送之前,您必须更新存储库。远程更改通常可以自动合并,但如果存在冲突,则必须手动解决。保持存储库较小有助于降低合并的可能性。
如果您有一个很大的解决方案,最好将其保存到多个存储库中。通常每个模块/ DLL / Visual Studio项目都是一个存储库。
另见Brent Laster的专业Git
答案 1 :(得分:0)
简而言之:
根据您的情况,所有平台(前端和后端)都为同一个项目做出贡献,因此您应该在一个仓库中管理它们。如果您在不同平台的单独存储库中管理项目,它将减少项目的耦合和关系,尤其是当您需要测试项目级别时。对于不同的平台,您可以在不同的分支中管理它们,这是项目版本控制的常用方式。
这是由多个平台开发的项目的示例realworld。