Oh, you’re using the Virtualmin git module. Hmm…I haven’t used it in many years…I don’t remember how it works. I guess it does need DAV, probably. But, that’s probably a mistake. It’s an old module. Still maintained, but only lightly. With so many very nice git hosting services (github, gitlab, etc.) that are cheap or free for small developers it’s kind of redundant effort.
I don’t think I understand what Plesk has to do with that? I mean, it’s definitely a good idea to use git to track your websites, but I’m having trouble visualizing what the control panel would have to do with it. What does that workflow look like?
You could have something like this: one remote repository on Github (eg. origin) one remote repository (eg. production) in production server (eg. Plesk). You do your development activities (issues management, pull requests, …) in Github and when you want to deploy you will push to production repository.
In Plesk you could set the active branch (master or main or whatever) and the web folder (eg. httpdocs). When you push to Plesk repo the code will be “deployed”. You can also configure a hook to automatically push to production when you push to Github.
You can check here Plesk information about “Deploying Content Using Git”.
Let me say I don’t have much knowledge/experience in DevOps and not sure if this is a best practice, but I’ve used it in some small projects with success. In large projects in Rails a deploy tool like Capistrano is necessary because of the several tasks you need to perform in deployment.