- Customize existing core features
- Adding new features
- Integrate downstream changes efficiently
One example approach could be to manage the problem with your VCS. One could:
- Require that all code changes get a special comment calling out the customization.
- Add downstream updates by extracting new files over an integration branch in your VCS.
- Examine all code changes scanning for any comments. If found, then manually adjust and apply the change.
- apply the integration branch to your production branch to finish the upgrade
- Execute any upgrade scripts that may need to turn
This approach could be scripted making the process pretty quick for none conflicting updates. But are there other approaches? Is there a best practice recommended by the ArrowChat team?
Thanks