@bulochkinvalya

Правильный подход к разработке на Bitrix?

ЭТАП 0. Прелюдия.

Должность - администратор сайта. Обязанности - переводить хотелки и замечания руководства в понятный язык и передавать работу исполнителям. Сайт на 1с Битрикс.

Через какое-то время, исполнители начали хереть, и часть работ взяли на себя. Сначала это было просто размещение статей и исправление грамматических ошибок, затем исправление базовой логики работы приложения (выводить не 2 картинки в ряд, а 3), ну и так далее, втянулся интересно.

До этого никогда в IT организации не работал, с Битриксом тоже, поэтому все велосипеды приходится городить самостоятельно. Возник вопрос, как правильно организовать логику работы над сайтом.

ЭТАП 1 НАЧАЛО

Подключаемся по FTP, правим файлы и смотрим на результат. Пробуем повторить действия, которые делали в начальных обучающих курсах HTML, CSS, PHP. Первые падения сайта. Задумались, что так не стоит делать на боевом

ЭТАП 2 ДЕТСАД

Сделали поддомен, теперь все изменения не роняют боевой сайт. Стали чуть смелее. Задумываемся о гите.

ЭТАП 3 ШКОЛА

Фрилансеры все. Переехали на собственный VDS, освоили vscode, Git, SSH.

Сейчас через vscode + плагин remote ssh подключаемся к серверу, меняем поддомен, если все ок, push в git, и через git checkout обновляем боевой.

Суть проблемы.
На локальной машине поднять битрикс не получается. Пробовали openserver, самостоятельную настройку windows, короче все на так работает. Отлично настраивается только на линуксе. И то благодаря только автоматической настройки окружения битрикса. Да и править на локальной, чтобы загружать на заведомо другую боевую кажется не очень верным решением.

В папке .gitignore написано игнорировать папку /bitrix/** но при команде git status вылетает сотни строк кеширования битрикса.
60530bcd74954435787576.png
Читал, что можно настроить .vscode/settings.json, но почти везде написано, что это как то связано с git, соответственно vscode выдает
60530c6da3731022216462.png

Каким образом исключить отслеживание vscode и git в ненужных папках?
Почему при настроенных параметрах, гит продолжает отслеживать?
Может быть нужно записывать в папку .git/info/exclude?
Возможно у меня неверная логика работы, и нормальные люди делают это совершенно по другому, можете рассказать как вы это делаете?

Обращаю внимание, работаю в vscode по ssh соединению, возможно, это важно и накладывает ограничения.
  • Вопрос задан
  • 1398 просмотров
Пригласить эксперта
Ответы на вопрос 2
udjin123
@udjin123
PHP, Golang, React
Vscode лучше заменить на PhpStorm.
На локалке все прекрасно разворачивается, в том числе на openserver, только вот окружение надо создавать максимально близкое к боевому. По этому имхо под виндой лучший вариант docker в wsl2. Для докера готовое решение смотрите bitrixdoc.
Ответ написан
Комментировать
@Firsov36
full-stack web developer
Просили советов, вот:

Переходите на Phpstorm. Папку bitrix/ зачем в игнор? А как же подсказки IDE для написания кода? Как минимум bitrix/modules/, bitrix/component/, bitrix/js/ - я оставляю. Также код Битрикса много ответов дает не документированного API. Или пользоваться bitrix cli и генерить файл orm:annotation для подсказок.

через git checkout обновляем боевой


опечатка, прикалываетесь или серьезно так делаете? загрузить изменения на сайт это git pull, а checkout это переключиться на другую ветку и переключение на другую ветку не загружает новых данных. да и ветки иногда закрывать надо.

Пробовали openserver, самостоятельную настройку windows, короче все на так работает.


Тут скачайте образ для VMWare Player или VirtualBox (оба бесплатные), установите туда BitrixEnv поверх CentOs minimal и создавайте на базе этого виртуального сервера хоть десяток сайтов. Там их можно мучать как угодно, а снимки сервера позволяют все в считанные минуты вернуть назад, если очень обрушили даже не сайт, а сервер.

Разрабатываете на виртуальном сервере в новой ветке репозитория (например issue-1). Тестируете на своем виртуальном сервере, потом завершаете разработку, мержите ветку issue-1 в production (или master) в рабочую и выгружаете на боевой сервер (или предбоевой). все ок? ветку issue-1 можно удалить.

p.s. Начало вашего вопроса порадовало)))
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы