This page provides info on recommended version control procedures in the
upgrade process and importing and merging new versions of the
Accelerator.
Version Control System (VCS) Hygiene
We recommend committing an unmodified version of the Accelerator before
making any modifications.
Your repository should ideally be structured to take advantage of
built-in merge tools when importing Accelerator upgrades. This can be
done by creating a branch which has the Accelerator release without any
custom changes made to it.
Upgrading the Accelerator
This section assumes you have used the above recommended VCS Hygiene.
Importing the new version of the Accelerator
This sections assumes you are following the recommended VCS Hygiene.
Check out the vendor branch from your VCS (this should contain the
Accelerator the way it was delivered prior to any customisation.
Delete all the files from your local working copy
Copy in the new version of the Accelerator
Commit your local working copy as the new version. Make sure the
missing files are deleted from the repository and the new files are
added.
Your VCS repository now contains a copy of the new version of the
Accelerator. More importantly, it is tracking the changes between
versions of the Accelerator.
Merging
Assuming the VCS branch containing your custom modification has a
previous version of the Accelerator as an ancestor, you can use your VCS
tools to merge the latest release into the branch containing your
modifications.
The merge will take the diffs between the two versions of the Accelerator
and attempt to apply them to the branch containing your modifications.
There will almost certainly be conflicts; where both the Accelerator and your project have changed the same code. The number of conflicts and their complexity will depend on the nature of the changes to the Accelerator between versions, and how they interact with your custom modifications. Your VCS tools will identify the conflicts and help you to resolve them.
Once the merge is complete, your VCS should be able to tell you how the project modifications differ from the Accelerator release and how your project code changed following the
import of the latest version of the Accelerator.