-
Notifications
You must be signed in to change notification settings - Fork 43
Updating CORE
The recommend method of tracking and updating CORE is using git and github. You're probably reading this on github so you're off to a good start.
CORE provides several branches at different stages of development. You can change which branch you're running by typing "git checkout" followed by the name of the branch. The master branch is the bleeding edge of development. Unless you are a developer, you probably do not want to run this. The version-x.y branches are numbered versions of CORE. The numbered versions only receive bug fix updates and should be fairly stable.
Office lists the current version in the footer of most pages. Lane does not. The update procedure is however similar for both components.
- First run
git fetch
to download information about new version(s). - Run
git checkout version-x.y
to switch to the new version of the software.- If anything goes wrong, you can switch back to the previous version in the exact same way
- Visit the configuration page for Office or Lane, depending which is running on the machine. This will create any new database structures that are required.
- Visit the Updates tab of the configuration page. This lists any changes that need to be made to existing database structures. Changes can be applied directly via that page or via the provided command line syntax.
- Note: Office updates may push changes to all connected Lanes. Generally this is desirable.
Again the procedure is similar for both Lane and Office. Simply run git pull
.
A script to simplify the procedure above is available. Download the tool and unpack it in the root directory of your CORE install. Run the update.php
script. Note that this requires Composer. The script will offer to install composer for you. You may have to manually install sebastian/git
and/or symfony/console
depending how old your CORE installation is.
Once update.php
is working, it provides four ways to update.
-
update:major
is identical to Updating to a New Numbered Version above -
update:minor
is identical to Updating Within the Same Numbered Version above -
update:dev
is for developers who have local changes. This option will create a separate branch and merge the requested version into that new branch. This is essentially what's described in [Git Practices]. -
update:auto
attempts to update to the latest version. Likeupdate:dev
this preserves local changes. Asnapshot-
branch is created before updating so changes can be reverted if needed. The output also contains details on how to revert changes to the current branch.-
update:auto
has a--force
option that will resolve any merge conflicts automatically. Be aware that this will discard conflicting local changes.
-