Migration Leitfaden von Magento 1 auf OpenMage
Fastest way to migrate
We are pleased that you are considering moving from Magento 1.x - to one of the best solutions in the market - OpenManage LTS. We are excited to share the details about the migration process.
We have prepared the One Step Migration Script to allow you to move quickly all of your products, customers, order data, store configurations, promotions, and more to OpenMage LTS.
It’s a lightweight, branch-based workflow that supports teams and projects where deployments are made regularly. Use this method if you are familiar with git.
First method
We are proud to present the quickest migration script, which you can download and execute with one command. Use this tool and get started right away with OpenMage LTS.
This command starts the download of the script, and when it's finished script will be executed automatically.
$ curl -fsSL https://migrate.openmage.org | sh
...and that's all. Enjoy a new e-commerce experience.
Migration script will work with any version of Magento CE newer than and including 1.3.3.0
excluding alphas, betas, and RCs.
Second method
Github methodology - This guide provides information on the workflow and best practices for using it to migrate your data. Let's take a look at this method.
1. Switch from your current production branch (here master) to new one (here migration)
git checkout -b migration
2. Print remotes
git remote -v
The output looks like:
origin https://lorem.ipsum/lorem-ipsum/lorem.ipsum/magento.git (fetch)
origin https://lorem.ipsum/lorem-ipsum/lorem.ipsum/magento.git (push)
3. Add upstream repository
git remote add upstream https://github.com/OpenMage/magento-lts.git
The output looks like:
origin https://lorem.ipsum/lorem-ipsum/lorem.ipsum/magento.git (fetch)
origin https://lorem.ipsum/lorem-ipsum/lorem.ipsum/magento.git (push)
upstream https://github.com/OpenMage/magento-lts.git (fetch)
upstream https://github.com/OpenMage/magento-lts.git (push)
4. Fetch changes from upstream
git fetch upstream
The output looks like:
warning: no common commits
remote: Enumerating objects: 59, done.
remote: Counting objects: 100% (59/59), done.
remote: Compressing objects: 100% (58/58), done.
remote: Total 257784 (delta 6), reused 43 (delta 1), pack-reused 257725
Receiving objects: 100% (257784/257784), 95.79 MiB | 1.78 MiB/s, done.
Resolving deltas: 100% (164945/164945), done.
From https://github.com/OpenMage/magento-lts
* [new branch] 1.8.0 -> upstream/1.8.0
* [new branch] 1.8.1 -> upstream/1.8.1
* [new branch] 1.9.0 -> upstream/1.9.0
* [new branch] 1.9.1 -> upstream/1.9.1
* [new branch] 1.9.2 -> upstream/1.9.2
* [new branch] 1.9.2.0 -> upstream/1.9.2.0
* [new branch] 1.9.2.1 -> upstream/1.9.2.1
* [new branch] 1.9.2.2 -> upstream/1.9.2.2
* [new branch] 1.9.2.3 -> upstream/1.9.2.3
* [new branch] 1.9.2.4 -> upstream/1.9.2.4
* [new branch] 1.9.3.0 -> upstream/1.9.3.0
* [new branch] 1.9.3.1 -> upstream/1.9.3.1
* [new branch] 1.9.3.x -> upstream/1.9.3.x
* [new branch] 1.9.4.x -> upstream/1.9.4.x
* [new branch] 20.0 -> upstream/20.0
* [new branch] docker-dev-setup -> upstream/docker-dev-setup
* [new branch] functional-test-suite -> upstream/functional-test-suite
* [new tag] 1.1.1 -> 1.1.1
* [new tag] 1.1.2 -> 1.1.2
* [new tag] 1.1.3 -> 1.1.3
* [new tag] 1.1.4 -> 1.1.4
* [new tag] 1.1.5 -> 1.1.5
* [new tag] 1.1.6 -> 1.1.6
* [new tag] 1.1.7 -> 1.1.7
* [new tag] 1.1.8 -> 1.1.8
* [new tag] 1.2.0 -> 1.2.0
* [new tag] 1.2.0.1 -> 1.2.0.1
* [new tag] 1.2.0.2 -> 1.2.0.2
* [new tag] 1.2.0.3 -> 1.2.0.3
* [new tag] 1.2.1 -> 1.2.1
* [new tag] 1.2.1.1 -> 1.2.1.1
* [new tag] 1.2.1.2 -> 1.2.1.2
* [new tag] 1.3.0 -> 1.3.0
* [new tag] 1.3.1 -> 1.3.1
* [new tag] 1.3.1.1 -> 1.3.1.1
* [new tag] 1.3.2 -> 1.3.2
* [new tag] 1.3.2.1 -> 1.3.2.1
* [new tag] 1.3.2.2 -> 1.3.2.2
* [new tag] 1.3.2.3 -> 1.3.2.3
* [new tag] 1.3.2.4 -> 1.3.2.4
* [new tag] 1.4.0.0 -> 1.4.0.0
* [new tag] 1.4.0.0-alpha1 -> 1.4.0.0-alpha1
* [new tag] 1.4.0.0-alpha2 -> 1.4.0.0-alpha2
* [new tag] 1.4.0.0-alpha3 -> 1.4.0.0-alpha3
* [new tag] 1.4.0.0-beta1 -> 1.4.0.0-beta1
* [new tag] 1.4.0.0-rc1 -> 1.4.0.0-rc1
* [new tag] 1.4.0.1 -> 1.4.0.1
* [new tag] 1.4.1.0 -> 1.4.1.0
* [new tag] 1.4.1.1 -> 1.4.1.1
* [new tag] 1.4.2.0 -> 1.4.2.0
* [new tag] 1.5.0.0 -> 1.5.0.0
* [new tag] 1.5.0.0-alpha1 -> 1.5.0.0-alpha1
* [new tag] 1.5.0.0-alpha2 -> 1.5.0.0-alpha2
* [new tag] 1.5.0.0-beta1 -> 1.5.0.0-beta1
* [new tag] 1.5.0.0-beta2 -> 1.5.0.0-beta2
* [new tag] 1.5.0.0-rc1 -> 1.5.0.0-rc1
* [new tag] 1.5.0.0-rc2 -> 1.5.0.0-rc2
* [new tag] 1.5.0.1 -> 1.5.0.1
* [new tag] 1.5.1.0 -> 1.5.1.0
* [new tag] 1.6.0.0 -> 1.6.0.0
* [new tag] 1.6.0.0-alpha1 -> 1.6.0.0-alpha1
* [new tag] 1.6.0.0-beta1 -> 1.6.0.0-beta1
* [new tag] 1.6.0.0-rc1 -> 1.6.0.0-rc1
* [new tag] 1.6.0.0-rc2 -> 1.6.0.0-rc2
* [new tag] 1.6.1.0 -> 1.6.1.0
* [new tag] 1.6.1.0-alpha1 -> 1.6.1.0-alpha1
* [new tag] 1.6.1.0-beta1 -> 1.6.1.0-beta1
* [new tag] 1.6.1.0-rc1 -> 1.6.1.0-rc1
* [new tag] 1.7.0.0 -> 1.7.0.0
* [new tag] 1.7.0.0-alpha1 -> 1.7.0.0-alpha1
* [new tag] 1.7.0.0-beta1 -> 1.7.0.0-beta1
* [new tag] 1.7.0.0-rc1 -> 1.7.0.0-rc1
* [new tag] 1.7.0.1 -> 1.7.0.1
* [new tag] 1.7.0.2 -> 1.7.0.2
* [new tag] 1.8.0.0 -> 1.8.0.0
* [new tag] 1.8.0.0-alpha1 -> 1.8.0.0-alpha1
* [new tag] 1.8.1.0 -> 1.8.1.0
* [new tag] 1.9.0.0 -> 1.9.0.0
* [new tag] 1.9.0.1 -> 1.9.0.1
* [new tag] 1.9.1.0-lts -> 1.9.1.0-lts
* [new tag] 1.9.1.1 -> 1.9.1.1
* [new tag] v19.4.0 -> v19.4.0
* [new tag] v19.4.1 -> v19.4.1
* [new tag] v19.4.2 -> v19.4.2
* [new tag] v19.4.3 -> v19.4.3
5. Rebase with latest Openamge branch (1.9.4.x currently)
git rebase -X theirs upstream/1.9.4.x
6. How to proceed when problem appears.
In this case, there was an issue with the auto-merge cron.sh and mage file. You have to decide about those files modes and then add and commit them.
git add cron.sh mage
git commit
7. Everything is set and ready to push
8. Clear cache (probably the best way is to remove var/cache folder in Magento root)
- a working installation of Magento 1.9.4.5
- write access to Magento code on the server
- git repo init in Magento root directory
BEFORE ANY ACTIONS A BACKUP OF CODE AND DATABASE IS HIGHLY RECOMMENDED
It has a few advantages when we compare it to other methods like simply copy/paste OpenMage code into the Magento root directory:
- access to all commits of OpanMage project in git log
- possibility to use git tools to manually compare some of the crucial files and decide what changes should be merged into our project (like Mage.php. Index.php, .htacces etc.)
- using OpenMage as a fork for your project. This will allow you to easily update code in the future