Задать вопрос
damir_sayahov
@damir_sayahov

Стоит ли хранить frontend 3 внешне похожих проектов в 1 репозитории и как с этим жить?

На данный момент есть 1 сайт и 1 репозиторий на битбакете(в нем пока что только фронтэнд).
Стили написаны по методологии БЭМ в SCSS, скрипты в обычном JS(JQuery), HTML компилируется из PUG.
Бэкенд на PHP и он отдельном репозитории в зачаточном состоянии.

В скором времени будет создаваться еще 1 сайт(а за ним скорее всего еще 1), у которого будет много похожих блоков.
Есть ли смысл так же держать отдельный репозиторий для фронта и использовать ее на 3 разных проектах, а бекенд держать так же отдельно?

Задумка такая, что добавив какой-то блок, можно быстро его завести на другом сайте без копипаста, а так же общие баги быстро фиксить сразу в 3 сайтах.
Как в таком случае организовать работу в плане гита?
Вообще стоит ли заморачиваться? Это случайно не попытка "выстрелить себе в ногу"?
Примерная структура фронта
5cd1f4772c1ea223301699.jpeg
  • Вопрос задан
  • 130 просмотров
Подписаться 1 Средний Комментировать
Помогут разобраться в теме Все курсы
  • ProductStar
    Python + Flask + Git: веб-разработка с нуля
    2 месяца
    Далее
  • Учебный центр IBS
    DEV-007 Введение в систему контроля версий Git
    1 неделя
    Далее
  • Stepik
    Git (система контроля версий)
    1 неделя
    Далее
Решения вопроса 1
askhat
@askhat
То что вы сейчас описали, называется монорепозиторий (не путать с модулями гита). Практика не новая, но сейчас обрела популярность, особенно во фронтенде. Подход имеет сторонников и противников, однако мы не будем переходить к священным войнам.

Это действительно может быть удобно. Например, чтобы выделить четвёртый проект из ваших трёх — содержащий скажем библиотеку компонентов и сторибук. Я нашёл для себя кейс при работе с реакт нейтив и реакт нейтив веб.

Из инструментов для организации могу посоветовать Lerna, ставший стандартом монореп. Или те же модули гита, если конечно умеете с ними работать.

Напоследок скажу, что несколько именитых компаний практикуют этот подход, на масштабах десятков проектов, и им кажется нравится.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
Нет, не стоит. Разные проекты - разные репозитории.
Ответ написан
Комментировать
Robur
@Robur
Знаю больше чем это необходимо
положите все общее в отдельный пакет, пилите там все и расшарьте между проектами.
Пакет можно хоть как организовать - от npm и bower до своего велосипеда
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы
ITK academy Нижний Новгород
от 50 000 до 90 000 ₽
Made In Dream Санкт-Петербург
от 100 000 до 220 000 ₽
от 250 000 до 320 000 ₽