周围目录的git子树或子模块
我们通常处理与CodeIgniter共享类似目录结构的项目,其中有一个围绕应用程序代码的框架(在父目录和同级目录中)。我们需要管理两个主要的工作流:周围目录的git子树或子模块,git,git-submodules,git-subtree,Git,Git Submodules,Git Subtree,我们通常处理与CodeIgniter共享类似目录结构的项目,其中有一个围绕应用程序代码的框架(在父目录和同级目录中)。我们需要管理两个主要的工作流: 在私有(非github)存储库中维护本地应用程序代码(例如/application目录) 从外部框架拉取上游更改,提交拉取请求等 我在研究中发现的最接近的方法是使用,加上少量的.gitignore或某种相关的巫毒,然而这似乎非常脆弱。有没有更好的方法来设置我们的存储库和目录?更好的方法是按照优先顺序将时间投入(非伪)子模块或子树的学习曲线中。你的评
/application
目录)我在研究中发现的最接近的方法是使用,加上少量的
.gitignore
或某种相关的巫毒,然而这似乎非常脆弱。有没有更好的方法来设置我们的存储库和目录?更好的方法是按照优先顺序将时间投入(非伪)子模块或子树的学习曲线中。你的评估是对的,“假子模块”是一种过于简化的脆弱尝试,在琐碎的情况下就足够了,但不适用于许多项目和多个对子项目的分支、历史和发布管理有不同想法的合作者
如果你真的想把所有东西都当作一个巨大的项目,你可以研究git子树合并,但我建议你不要这样做,因为子模块特别适合管理具有不同发布时间表的第三方依赖关系
根据你的问题,我知道你的设置是这样的,简化了
parent-framework
|-- application
|-- framework
`-- other-framework
其中框架(即,framework
,其他框架
,可能还有父框架
)是在github上管理的独立项目
这就是我要做的
应用程序
存储库父框架
级别或更高级别创建一个超级项目,将所有框架(包括您的私有应用程序
回购)都连接在一起应用程序
开发线SDLC
还请注意,git的最新版本使递归推送(和更新)子模块变得非常容易,因此不必担心为框架创建拉取请求的复杂性。在这方面我有一半的期望。谢谢你指出制作超级项目,这让它在我的脑海里点击。