Ich arbeite an einem privaten NPM-Paket, das ich Entwicklern zur Verfügung stelle, die unsere API verwenden. Aus verschiedenen Gründen (durch das Management beschlossen), das Paket auf dem NPM-Repository (Sonatype Nexus) die folgende Ordnerstruktur:Machen Sie mein NPM-Paket in Source- und Dist-Versionen verfügbar
+- build
| |- browser.min.js
| \- node.min.js
|- docs
| \ ...
|- package.json
\- README.md
Die JS-Dateien im Verzeichnis build
aus dem eigentlichen Code des Pakets zusammengestellt.
In dem erstellten Paket sind auch bestimmte Versionen der Abhängigkeiten enthalten, auf die sich das Paket stützt (z. B. eine geänderte Version von WildEmitter
).
für einfachen Publishing zu ermöglichen, die package.json
darin folgend hat:
...
"main": "build/node.min.js",
"browser": "build/browser.min.js",
"files": [
"build/*.js",
"docs/*",
"README.md"
],
...
jedoch für die internen Gebrauch des Pakets, wollen wir eine kompilierte Version verwenden, insbesondere den Aufwand für eingeschlossen zu reduzieren unsere Abhängigkeiten, die oben enthalten waren.
(abgesehen, ich weiß, dass dies nicht unbedingt der beste Weg, Sachen zu verpacken, aber wir können nicht, dass an dieser Stelle so leicht ändern, wenn wir keine andere Wahl haben.)
ich, dass ich davon ausgegangen, wäre in der Lage, das Paket aus unserem privaten Git-Repository zu holen, das mir den gesamten Code des Pakets geben würde.
jedoch NPM liest immer noch der files
Abschnitt package.json
, wenn es von Git lädt, so tut es die git clone
und dann löscht alle Dateien, die in dem files
Array nicht vorhanden sind, mich mit einem Verzeichnis zu verlassen, das nur enthält docs/*
, package.json
und README.md
.
Gibt es eine Möglichkeit, den gesamten Code des Pakets aus Git zu checken und zu behalten?
Verwandte, aber ich glaube nicht, duplizieren (weil hier ich beide Seiten und * kann * das Paket ändern, wenn nötig): http://StackOverflow.com/Questions/35446639/Install-ignored-Files-mit- npm –