Ответы:
На самом деле нет правильного или неправильного ответа, он сводится к вашей ситуации. Сами композиторы испытывают довольно сильные чувства, что да, вы должны игнорировать это, и в идеальном мире это определенно то, что вы должны делать, но это не всегда так просто.
Это зависит главным образом от вашего хостинга и процесса развертывания. Если, например, вы работаете в Pantheon и не хотите реализовывать сложный рабочий процесс, связанный с вышестоящим потоком, включающий диалог с их техническим персоналом, вы вынуждены передать все зависимости в репозиторий. На другом конце нет Composer, ожидающего запуска, когда ваш код выдвигается, если вы сами не подтолкнете эти файлы, их там нет, и все сломается.
Точно так же, если вы используете виртуальный хостинг и у вас нет рабочего процесса CI, вы, вероятно, будете вынуждены тащить с собой все файлы тем или иным способом.
По сути, если он подходит для вашего рабочего процесса разработки / развертывания, чтобы иметь возможность исключать эти файлы, это хорошая идея (по причинам, указанным в приведенной выше ссылке).
Если этого не произойдет, передать их в репо абсолютно нормально.
Ядро и модули Drupal обновляются так часто, часто с исправлениями безопасности, поэтому стало привычным использовать composer для управления зависимостями. Composer поместит зависимости в каталог vendor, и вам не нужно фиксировать их в своей кодовой базе. Вы можете запустить «composer install» на сервере, и он загрузит зависимости на этом сервере. Это позволяет вашему хранилищу кода быть легче. Если вы используете этот процесс, вы не захотите фиксировать файлы, так что да, вы хотите gitignore этот каталог.
Если вы хотите начать работу с использованием composer для управления сайтом drupal, вы можете проверить проект drupal scaffold .
Да, ты должен
Если у вас есть композитор, вы можете включить его с композитором.
Если вы не знаете, как использовать composer, это было бы отличным местом для поиска:
Использование composer для управления зависимостями сайта drupal