Годится ли Yandex.Disk или Dropbox для локльной разработки?
Для разработки на ruby on rails я решил использовать удаленный мощный сервер. Для того чтобы не ноутбук не грузил свои ресурсы при соберке контейнеров докер и прочих нагруженных задач. Хотелось бы чтобы процесс разработки выглядел так. Разраб работает локально у себя с файлами проекта, эти изменения сразу же применяются на удалённом сервере. Он по ssh подключается к консоли сервера и выполняет нужные ему команды.
Хорошая ли это идея использовать для синхронизации файлов Yandex.Disk или Dropbox?
Лучше использовать систему контроля версий, например, git. И интегрировать с CI, который при каждом коммите выполняет пересборку проекта и другие какие-нибудь необходимые действия.
arruah, смотря что понимать под "каждым изменением", если для реализации какой-то фичи вы внесли изменения в пять файлов - то эти пять изменений правильнее и логичнее в один коммит загнать, не делая для каждого отдельного изменённого файла отдельный коммит. А если в одном файле поправили два бага (вызванных разными ошибками в коде и между собой не связанных) - то наоборот, делать два коммита, на каждый баг - по коммиту. Если ведёте разработку в одиночку - то можете делать так, как вам удобнее, в конечном итоге всё равно придёте к какой-нибудь удобной схеме.
SagePtr, Разработка ведётся одним человеком. Речь именно о мелких изменениях. Склоняюсь больше к использованию sftp. Похоже что Yandex,Disk очень меделенно синхронизируется.
arruah, всё равно, если эти мелкие изменения однажды придётся откатить, например, что-то нечаянно сломаете в коде или в ассетах - будет крайне проблематично быстро откатить это всё к работоспособному состоянию и найти источник проблемы. В то время, как в системе контроля версий можно быстро перейти к состоянию в любой момент времени, а через бисекцию можно даже быстро найти из сотни коммитов, в каком именно месте сломали, не перебирая каждый коммит по-отдельности.
А ещё - если вам нужно поддерживать несколько веток (стабильную на сервере и находящуюся в процессе разработки, которая ещё сыра для продакшена) - то будет очень сложно без системы контроля версий одновременно их разрабатывать.
arruah, тогда использовать в связке с контролем версий CI. Во многих из них есть возможность загрузить полученные в результате сборки файлы по sftp. Тот же Capistrano, как ранее предложили
Если вам очень надо что-то писать по SSH, то можно настроить IDE для синхронизации через scp или FTP. Но это не самый лучший способ. Куда лучше освоить системы деплоя по типу capistrano, а локально работать с небольшим объемом данных.