Комментарии 16
Я правильно понимаю, что это только для проектов на js или?...
Да, только для js(ts). Честно говоря немогу представить зачем вам бы понадобилась лерна для других языков-там свои аналоги и части проблем которые есть в js нету(зато есть свои)
Lerna - это инструмент, который оптимизирует рабочий процесс по управлению репозиториями с несколькими пакетами с помощью git и npm.
А что делать, если куча либ на две строчки? Репозитории плодить?
Вы это себе как представляете? С точки зрения системы контроля версий, это обычный репозиторий, только в нем несколько пакетов, а инструменты вроде lerna просто упрощают управление этими пакетами (связывание, публикация и т.п.) - так что это не тот уровень, на каком могут возникнуть упомянутые вами проблемы.
Последний раз когда читал про монорепозитории, писали, что проблем с ними дофика. Особенно с opensource проектами (историю коммитов рвет, чего-то там с отправкой pull reques и т.д.).
А это несовсем монорепозиторий в том смысле в котором обычно имеется ввиду. Монорепо с лерной - это чаще просто репа, в которой хранится несколько проектов. С точки зрения гита, туллинга это одна гит репа(либ гит модули)
Публикация изменённых проектов:
lenra publish
Это опечатка? Lenra?
Есть ли в lerna способ задать ту версию которую я хочу выставить? По дефолту она вроде сама инкрементит версию, но как быть если версия приходит "извне" и не поддается простой логике lerna?
1) А как у вас npm install
без actions/setup-node
работает?
2) Если использовать actions/setup-node
, то необходимости вызывать команду echo "//registry.npmjs.org/:_authToken=$NPM_TOKEN" >> .npmrc
нет, т.к. экшн это делает по-умолчанию. Разве что переменная называется NODE_AUTH_TOKEN
.
Там была ошибка - http вместо https. Поправили конфиг гитхаб экшена.
NPM монорепозиторий (Lerna + автодеплой GitHub Actions)