Version control on multi dev multi project system

Hello everyone,

We have a central Ignition gateway that runs a large enterprise system with multiple projects. Each developer has their own VM, but instead of running a local gateway, they connect their Designer to the shared gateway to develop.

What’s the best way to implement version control in this setup?
How can developers work with git without being logged into the gateway? Python scripting?
Any best practices for handling conflicts when multiple developers work on the same system?

For multiple projects on a gateway... Is it better to do a mono repo or different repos for each project? All our projects inherit from a "master_project" with minor changes on each project.

Thanks!

Not sure why you use VMs at all for this.
Each developer would develop locally (Designer on host machine) on a docker image (Docker on host machine) gateway running the same gateway as live/dev server that has a shared tag provider from production/live to enable live data if that is needed for development. Each developer commits code revisions to git from own gateway, manager approves pull requests into the main dev server for testing then manages the pull request into production server.