Мы же используем git на 100% — мы всё разрабатываем, показываем клиенту, и всё делаем через систему контроля версий. А потом, когда клиентам устанавливаем «боевую» версию, мы это также делаем через git. У нас есть некий стенд — это одновременно пространство для наших тестов и то, как мы показываем клиенту текущую работу. Соответственно, после разворачивания на системе клиента «боевой» версии, дальнейшее взаимодействие идёт таким же образом — что-то мы показываем на тесте, и соответственно, когда клиент это принимает, мы это перекидываем с помощью git на текущую «боевую» версию («прод» в терминологии разработчиков); и, так как мы используем git, то мы не можем потерять какие-то изменения, которые внесли, а в случае чего — можем быстро откатиться назад.