Вы до сих пор заливаете по FTP ? Пора это изменить!

При создании сайта или при внесении изменений в его структуру или внешний вид, разработчик сталкивается с необходимостью залить изменения на сервер. Стандартная практика для многих ― использовать FTP. Но стоит ли это делать и есть ли другие альтернативы? В этой статье мы поговорим о том, почему стоит перестать использовать FTP и как иначе заливать изменения на сервер.
Что такое FTP?
FTP — это протокол передачи файлов, который является устаревший способом «создать сайт». Чтобы вам было понятнее, ФТП сам по себе ― это не «программа», а скорее телефонная линия. Это протокол, который представляет собой набор правил, согласованных как локальным компьютером, так и хост-компьютером, которые могут обмениваться сообщениями.
Почему FTP — это неудобно?
FTP — это неплохой стандартный инструмент, но до того времени, пока вы случайно не перезапишете файл или вдруг не удалите нужную папку. И даже если с Вами никогда этого не случалось, будьте уверены — рано или поздно это произойдет.
Для работы работы по FTP обычно используют FTP-клиент вроде FileZilla или Total Commander. В данном случае есть два варианта действий:
- Загрузка сразу ВСЕХ файлов
Это может занять много (или даже очень много) времени, ну и вдобавок могут перезаписаться файлы.
- Загрузка только измененных файлов
Достаточно сложно и неудобно отслеживать, какие именно элементы были изменены.
Какая есть альтернатива?
Использование FTP (или SFTP) для развертывания требует дополнительного времени, затрат и рисков, которых многие разработчики предпочитают избегать, особенно когда есть гораздо лучший вариант — развертывание с помощью git.
GIT ― это система управления версиями файлов. С ее помощью можно хранить и отслеживать историю всех изменений файла с комментариями, а также обратиться к любой версии элемента.
Почему развертывание GIT лучше, чем развертывание через FTP?
- GIT экономит вам время, загружая только те файлы, которые изменились с момента последней загрузки.
- Уменьшает количество человеческих ошибок.
- Поддерживает идеальную синхронизацию вашего сайта с вашим репозиторием GIT. При развертывании FTP вы не можете сказать, какая версия кода в настоящее время работает на сервере, тогда как git отслеживает это и упрощает доступ.
- GIT также позволяет очень легко вернуться к предыдущей версии кода, если это когда-либо понадобится, поскольку все предыдущие версии уже хранятся на сервере.
- GIT автоматически передает на сервер только измененные файлы, тогда как при развертывании FTP вам необходимо повторно загружать весь веб-сайт при каждом изменении (или вручную отслеживать, какие файлы были изменены).
- GIT позволяет работать с полными наборами изменений, а не с отдельными файлами. Часто изменение одного файла зависит от изменения другого файла. С GIT все эти изменения объединяются в коммит, тогда как с FTP вы будете вынуждены всегда работать с отдельными файлами и каталогами.
- С GIT легко увидеть файлы, которые могли быть изменены или добавлены вредоносным кодом или хакерами. С FTP такой видимости нет.
- Развертывания FTP намного сложнее автоматизировать или интегрировать в более крупный рабочий процесс развертывания, который должен включать такие вещи, как компиляция CSS, минификация JavaScript, удаление частных файлов и многое другое.
GIT не зря стал стандартом управления версиями. Его способность ветвить проекты, отслеживать и откатывать изменения делает разработку НАМНОГО проще и безопасней.
часто задаваемые
вопросы