首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >使用Git和Magento的最佳实践?

使用Git和Magento的最佳实践?
EN

Stack Overflow用户
提问于 2010-12-31 01:09:35
回答 3查看 10.4K关注 0票数 18

我正在研究如何在自己的repo中最好地使用自定义代码,同时与供应商的库(在本例中是Magento)集成。在我的例子中,我不需要向供应商推送补丁(尽管这将是一个很大的附带好处)。

我已经研究了git子模块和git子树。我不认为git子模块能满足我的需求。Magento具有以下类型的树结构:

代码语言:javascript
复制
/app
  /code
     /community *
     /core
     /local *
  /design
     /adminhtml
     /frontend
        /base
        /yourtheme *
/lib
  /Zend
  /Varien
  /yourlib *
/js
  /yourjs *
  /varien
  /mage

在单独的文件夹中使用git子模块似乎效果最好(例如,/是你的应用程序,/vendor/magento是子模块)。然而,由于这种程度的相互交织,子模块似乎不是一个好的解决方案。这一点我说错了吗?

这就给我留下了git子树。但是对于git子树,相同的核心假设(供应商分支,顾名思义,就是一个子树)并不成立。Magento不是一个子树,而是我的项目所在的核心库。对吗?

如果这两种git方法都不起作用,有没有其他我应该知道的方法可以实现我正在尝试实现的目标呢?

我不愿意追求的最后一个选项是有一个回购,然后我只需应用于最新的供应商更改(从tarball中拉入)。我不愿意追求这一点,因为我觉得拥有供应商的日志信息(从https://github.com/magentomirror/magento-mirror中提取)将对整理新的更新和找出哪些更改对我有很大帮助。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-03-02 05:45:49

我认为你可以使用modgit工具来做这件事:https://github.com/jreinke/modgit你可以用modgit clone命令克隆一些Magento模块。这里有一个完整的例子:http://www.bubblecode.net/en/2012/02/06/install-magento-modules-with-modgit/

票数 3
EN

Stack Overflow用户

发布于 2011-03-10 14:32:20

你提到的那些方法对我来说都不管用。

目前,我正在使用pear安装和管理核心模块和社区模块的升级,并使用以下.gitignore文件将整个magento结构提交到git存储库:

代码语言:javascript
复制
# Dynamic data that doesn't need to be in the repo
/var/*
/media/*
/downloader/pearlib/cache/*
/downloader/pearlib/download/*
/app/etc/use_cache.ser
local.xml

并使用以下shell命令保留空目录:

代码语言:javascript
复制
for i in $(find . -type d -regex ``./[^.].*'' -empty); do touch $i"/.gitignore"; done;

我想过的另一个想法是尝试一个供应商分支模型,但我担心这会增加额外的麻烦,特别是在一些大型依赖树的情况下,即为了真正的效率,它必须集成在pear级别上,即每个下载的模块必须自动分支,所以,目前看来只使用付费扩展是很好的。

我试图在magento论坛上发起这个话题,但也没有得到任何回复:http://www.magentocommerce.com/boards/viewthread/78976/

更新:

Magento Composer Installer -值得一看。

Composer正在成为标准的依赖项管理工具,因此,在项目中使用它将获得更多的好处。

你不需要提交或者分支扩展,主题,库到你的项目树中,但是总是有合适的版本和依赖项。

谢谢。

票数 3
EN

Stack Overflow用户

发布于 2011-06-10 04:58:13

我想你说的是不同的东西。

Yauhen的建议完全正确。您可以在git中完成所有这些操作,并且不需要子模块或子树。

我有和你一样的.gitignore文件,所以看起来不错。

我写了一篇关于我们如何使用git作为一个团队来管理magento商店的文章,也许它会对你有用:

Best practices for Magento Deployment

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4564622

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档