Берёте GitLab, создаёте в репозитории две ветки: dev и master. Настраиваете деплой (CI/CD) с ветки dev на test.site.ru, с master - на продакшен, тоесть site.ru. Соответственно, при внесении изменений в ветку, изменения сразу загружаются на сервер, а при "затирании" файлов друг друга будет выдано предупреждение и вы сможете объеденить два файла в один