我目前有几个使用kohana作为框架的项目,以及我目前所拥有的 是一个像这样的目录结构
project
- application
- system
- modules
“项目”目录在mercurial源代码控制下,我基本上复制并粘贴我使用的模块。并将它们提交给每个项目。
但是我现在发现我修复了一个模块中的错误,没有简单的方法可以使用该模块对所有其他项目进行修复。
我想要做的是以某种方式链接模块,以便我可以在需要时轻松获取更新。 (我一直在寻找subrepos这样做)
现在我在mercurial网站上阅读了这篇文章 “使用瘦外壳存储库来管理子存储库”
https://www.mercurial-scm.org/wiki/Subrepository
所以我提出了这个概念
applications
- application1 (hg repo)
- application2 (hg repo)
mymodules
- mymodule1 (hg repo)
- mymodule2 (hg repo)
project (hg repo)
- application (sub repo pointing to applications/application1)
- modules (several git repos on github, custom modules which are in mymodules/module1 repos)
- system (git repo on github)
website
- project (links to project repo, including application, modules and system)
- assets (images, css, etc)
现在我认为这是一个很多的结构,而且我对于本质上是一个简单的问题有点过头了。
我也不确定自己应该怎么做。
在我的网站回购并推回项目,这将被推回到应用程序,模块等
或者我应该处理应用程序回购并推升到网站级别?
这是构建事物的最佳方式吗?
还有必要使用我使用的所有github模块的本地克隆,以加快速度吗?
任何帮助表示赞赏
答案 0 :(得分:0)
subrepos解决方案很好,因为它允许分开:
如何使其有效意味着您如何组织发布管理流程 您应该从您的存储库进行修改,然后将它们传播到部署结构(通过项目中的更新,然后在网站内更新项目)。