This page provides info on recommended version control procedures in the
upgrade process and importing and merging new versions of the Sign-Off
Module.
Version Control System (VCS) Hygiene
We recommend committing an unmodified version of the Sign-Off Module
before making any modifications.
Your repository should ideally be structured to take advantage of
built-in merge tools when importing Sign-Off Module upgrades. This can
be done by creating a branch which has the Sign-Off Module release
without any custom changes made to it.
Upgrading the Sign-Off Module
This section assumes you have used the above recommended VCS Hygiene.
Importing the new version of the Sign-Off Module
Check out the vendor branch from your VCS (this should contain the
Sign-Off Module the way it was delivered prior to any
customization).
Delete all the files from your local working copy
Copy in the new version of the Sign-Off Module
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
Sign-Off Module. More importantly, it is tracking the changes between
versions of the Sign-Off Module.
Merging
Assuming the VCS branch containing your custom modification has a
previous version of the Sign-Off Module 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 version of the Sign-Off
Module and attempt to apply them to the branch containing your
modifications.
There will almost certainly be conflicts; where both the Sign-Off Module
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
Sign-Off Module 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 Sign-Off Module release and how
your project code changed following the import of the latest version of
the Sign-Off Module.