Как вы получаете новые пакеты реакта?
От: merge  
Дата: 10.02.25 14:07
Оценка:
Папка node_modules весит 100+мб поэтому она в гитигноре и каждый разработчик после гит пулла делает npm install чтобы скачать новые пакеты в node_modules.

Как у вас выглядит этот процесс и еще желательно с деплоем?
Re: Как вы получаете новые пакеты реакта?
От: bnk СССР http://unmanagedvisio.com/
Дата: 10.02.25 16:10
Оценка:
Здравствуйте, merge, Вы писали:

M>Папка node_modules весит 100+мб поэтому она в гитигноре и каждый разработчик после гит пулла делает npm install чтобы скачать новые пакеты в node_modules.


100мб это семечки. у меня где-то 1.5 гб сейчас на проекте

M>Как у вас выглядит этот процесс и еще желательно с деплоем?


Разработчику можно делать "npm ci" (npm clean-install) чтобы избежать разных вариантов на разных машинах или изменений в package-lock.
При этом все сносится и ставятся весии из package-lock. При обычном pull без изменений в package.json это делать ни к чему.

Для деплоя в случае беэкнда на nodejs есть dependencies и devDependencies.
Подразумевается что для раобты приложения нужны только dependencies
npm ci
npm run build
npm ci --omit=dev # в папке node_modules должно остаться только то что нужно для работы

Честно говоря не очень понял при чем тут реакт (имеется в виду react?)
Если приложение — это веб-сайт (фронт), и все компилируется в статику то node_modules после сборки не нужны, все нужное в папке dist.
Отредактировано 10.02.2025 18:29 bnk . Предыдущая версия . Еще …
Отредактировано 10.02.2025 18:29 bnk . Предыдущая версия .
Отредактировано 10.02.2025 18:28 bnk . Предыдущая версия .
Отредактировано 10.02.2025 16:12 bnk . Предыдущая версия .
Re: Как вы получаете новые пакеты реакта?
От: Sinclair Россия https://github.com/evilguest/
Дата: 16.02.25 05:31
Оценка:
Здравствуйте, merge, Вы писали:

M>Папка node_modules весит 100+мб поэтому она в гитигноре и каждый разработчик после гит пулла делает npm install чтобы скачать новые пакеты в node_modules.


M>Как у вас выглядит этот процесс и еще желательно с деплоем?

1. Используется pnpm вместо npm. Позволяет очень сильно сэкономить на размере, т.к. он транзитивные зависимости не тянет, а линкает.
2. Да, node_modules в git не добавляются. pnpm install у меня зашит в build script, чтобы не надо было думать о том, когда его вызывать.
3. Деплоя у меня как такового нет, т.к. это не фронт, а пакеты под node.js. Но принцип остаётся тем же самым: деплоится собранный пакет. Например, через тот же pnpm. Его зависимости в него не включаются, а стаскиваются тем же pnpm при деплое.
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.