我准备将我们的Magento商店从1.5.0升级到1.6.0,我知道我想要这样做,但我对我需要使用的命令有点不确定。
对于初学者,我的生产服务器上有我当前的商店,我有git设置,并且我们的Beanstalk帐户上有回购的副本。我在该回购中有完整的变更历史,并且最好保留这些变更。
我有一个我们购买的主题然后进行了大量优化,但幸好几乎所有的优化都在override.css文件中。虽然,主题文件本身有一些小的代码更改。
由于Magento使用SVN作为他们的CVS,我发现(在Github上)Magento发布的镜像。
所以,到目前为止,我有三个地方想要'合并':
我正在考虑将Magento镜像作为分支添加到我现有的git repo中,称之为1.6.0或类似。然后以某种方式将普通主题目录和文件拉入主分支......
我是否在正确的位置?
我还在考虑保护生产网站,添加网站的暂存版本以运行这些合并来测试它们。
答案 0 :(得分:6)
这很简单,但你必须确保你的网站基于一些主仓库,这些仓库可以在早期版本的流中合并(将所有Magento版本作为标签或分支的仓库,可以从最初合并到最新版本) 。所以这里有两个可以遵循的方案
通常有一个如下的git设置:
MAGENTO MASTER - >远程设置有所有MAGENTO版本
你的主人 - >远程起源是MAGENTO MASTER
您始终在your_dev分支上进行开发,如果您已将更改准备好进行评估,则将_stage与_dev合并,如果批准了更改,则将状态合并为_dev,来自_dev或来自_stage。
git clone git://github.com/speedupmate/Magento-CE-Mirror.git yourprojectdir
cd yourprojectdir
git fetch --tags
git tag
git checkout -b yoursite_dev magento-1.5.0.1
git checkout -b yoursite_stage yoursite_dev
git checkout -b yoursite_live yoursite_dev
git checkout yoursite_dev
git branch
//copy in your site
//separate changes or originals
//add any file/dir with local importance to .gitignore
//turn of your default theme, disable all local/community extensions and overrides
//assuming you are on dev branch commit your clean state
git merge magento-1.6.0.0
//visit the site to execute the upgrade
//enable your theme , extensions , debug
这为您提供了方案1的起点,之后您可以在您的网站中复制并开始分离更改并在当前网站和主题中进行排序