GitLab sent out an email today (as I’m writing) about best practices for source code control for collaboration.
GitLab’s five best practices are:
One simple truth that test and automation engineers know well is that technology is always changing and advancing. Even the most state-of-the-art system today will be obsolete tomorrow. Obsolescence is caused by a number of factors, but regardless of the cause, if you don’t closely support your system, it will eventually become outdated and it will need to be updated.
You have a legacy control system that needs to be updated to new hardware and software while maintaining the same behavior as the old system. Building a system that simulates the environment of the legacy system can help. For example: if you are creating a new control system for a rocket launch facility, you would create a system that simulates the rocket and the launch facility.