git - Github 上的项目架构
问题描述
我的问题与基本面更相关。在我的项目中,我需要做出 2 个决定。
第一个是我有 3 个模块,我想将它们保存在单独的存储库中,其中一个是核心模块,而 mod1 和 mod2 依赖于此。如何在 Github 中组织这种结构,在核心模块中自动部署到 mod1 和 mod2?
第二部分更加复杂,可以根据第一部分进行更改(我猜)。由于我们使用 Mod1 和 Mod2 存储库直接用于 Azure 上的部署,因此其他团队的某些人将使用此基础存储库为不同的客户进行部署,但我们也希望将此存储库保留在同一组织下并保持例如 mod1 之间的连接和 mod1-project1。因为项目中的一些修改可以带回主存储库 Mod1。
此外,我们在 Mod1 和 Mod2 中有核心模块的副本,可以使用 github 操作部署它,但例如 Mod1-project1 的核心更改,可以带回核心模块,因为它们没有直接连接?
core-->mod1-->mod1-project1
mod1-project1-->mod1-->core
我们如何才能以合乎逻辑的方式维持这种关系?
解决方案
如何在 Github 中组织这种结构,在核心模块中自动部署到 mod1 和 mod2?
在 github 中有 3 个完全不同的存储库,然后通过子模块将这些存储库组合到 git 中。
git clone https://github.com/<user>/mod1
git clone https://github.com/<user>/mod2
cd mod1
git submodule add https://github.com/<user>/core core
cd ..
cd mod2
git submodule add https://github.com/<user>/core core
github 博客有关于如何使用子模块的说明:https ://github.blog/2016-02-01-working-with-submodules/
推荐阅读
- c++ - 如何从 Windows 资源管理器上的自定义文件类型中删除 System.Size 属性?
- c# - C# 音频播放不好
- java - Android MVVM/Repository 如何强制 LiveData 从存储库更新?
- awk - awk 浮点比较不起作用
- c# - 即使使用 Linq C# 在第二个表中没有相关信息,我也需要从表 1 中获取所有行
- xml - 如何在odoo13中制作自己的发票模板,模块
- android - 使用电子邮件意图发送带有多个附件的数据
- excel - Apache nifi:当每行具有不同的单元格长度时,无法将 excel 解析为 csv
- python - VScode python unittest:没有发现测试
- python - 从python中的信号中删除不需要的部分