我正在努力弄清楚如何在我自己的回购中为自定义代码进行最佳工作,同时与供应商的库(在本例中为Magento)集成.在我的情况下,我不需要将补丁推送到供应商(虽然这将是一个很大的附带好处).
我查看了git子模块和git子树.我不认为git子模块可以满足我的需要.Magento具有以下类型的树结构:
/app
/code
/community *
/core
/local *
/design
/adminhtml
/frontend
/base
/yourtheme *
/lib
/Zend
/Varien
/yourlib *
/js
/yourjs *
/varien
/mage
Run Code Online (Sandbox Code Playgroud)
使用git子模块似乎在单独的文件夹中效果最好(例如/是你的app和/ vendor/magento是子模块).然而,由于这种程度的交织,子模块似乎不是一个好的解决方案.我错了吗?
这让我失去了git子树.但是使用git子树,相同的核心假设(供应商分支,如名称所暗示的,一个子树)并不成立.Magento不是一个子树,而是我的项目适合的核心库.那是对的吗?
如果这两种git方法不起作用,那么我应该知道的其他方法会做我想要完成的事情吗?
我不愿意追求的最后一个选择是拥有一个仓库,然后我只应用于最新的供应商变更(从tarball中提取).我不愿意这样做,因为我觉得拥有供应商的日志信息(从https://github.com/magentomirror/magento-mirror中提取)对于整理新的更新并找出影响我的更改非常有帮助.
嗨(对不起,如果之前有人询问,但我找不到答案)
我正在寻找使用Git(可能是Github)来实现我将要开展的项目.该项目将使用Yii框架,该框架需要一组数据库表等.当我们正在开发时,我们需要添加/编辑/删除表,但生产区域不会有这些表.我们如何解决环境之间的差异?
我现在唯一的想法是以某种方式将SQL的Schema包括数据转换为.sql文件,并使用一个脚本,它会自动更新我们的数据库,成为我们项目的一部分(将是Github的一部分) .这是最好的主意吗?还是有什么我想念的?
在此先感谢您的帮助