Если я Вас правильно понял, то советую посмотреть в сторону полноценных IDE, например, от JetBrains.
Там можно подключить и ftp, и git, да и вообще, что угодно.
Сделали полноценные изменения для какого-либо функционала -> коммит and push в репозиторий -> клиент смотрит уже на github/gitlab/bitbucket. А визуальная составляющая зависит уже от выбранного хранилища.
Конечно можно дать клиенту какой-нибудь gitKraken и пусть он себе локально копирует проект, обновляет и смотрит и т.д. Но такой вариант не очень.
А вообще забудьте про ftp и откройте мир Continuous Integration, ну или на крайний случай делайте всё через git.
Сделали изменения у себя -> отправили на github/gitlab/bitbucket -> обновили репозиторий на сервере