Ich baute eine monorepo mit Lerna und Yarn Workspaces .
Alles funktioniert gut, aber jedes Mal, wenn ich eine neue Abhängigkeit von einem Paket installiere (nennen wir ihn A ) , benutze ich :
yarn add <package_name>
Yarn fügt es hinzu und löst dann das install
Skript aller Pakete im Monorepo aus, auch der Pakete, auf die sich A nicht verlässt.
Es gibt es trotzdem, um dies zu vermeiden? Es dauert einen Moment, bis sie ohne Grund installiert sind.
javascript
yarnpkg
npm-scripts
lerna
monorepo
Erazihel
quelle
quelle
Antworten:
Versuchen Sie, dem spezifischen Arbeitsbereich Folgendes hinzuzufügen: -
Einige Dokumente finden Sie hier
quelle
Sie können Garn 2 mit
nodeLinker: node-modules
in versuchen.yarnrc.yml
. Garn 2 garantiert, dass die Neuerstellung nur für Pakete ausgelöst wird, deren Abhängigkeiten geändert wurden. Dies wurde von Garn 1 nicht garantiert. Es wird jedoch immer noch sehr selten vorkommen, dass scheinbar nicht verwandte Pakete neu erstellt werden, wenn sie nach dem Hinzufügen eines neuen Pakets anders gehisst werden , aber das wird sehr selten passieren.quelle
Fügen Sie mithilfe von scope das Paket dem jeweiligen Modul hinzu.
lerna add some_package_1 --scope=some_module_x
Mehr: https://github.com/lerna/lerna/tree/master/commands/add#readme
quelle