2017-03-06 4 views
1

Ich bin auf der Suche nach einer guten Möglichkeit, alle .ts Dateien in einem Projekt zu ignorieren, wenn ich auf NPM publiziere, kann ich das tun, indem ich folgendes hinzufüge meine .npmignore Datei:.npmignore - Ignoriere alle * .ts Dateien, aber nicht * .d.ts

*.ts 

aber wait..actually möchte ich all .d.ts Dateien in meinem Projekt halten, wenn ich veröffentliche ...

Was kann ich meine .npmignore Datei hinzufügen, hält alle .d.ts Dateien aber alle .ts Dateien ignorieren?

Ich nahm an, ich habe eine Form von Regex verwenden, um alle Dateien zu ignorieren, die mit .ts beenden, die mit .d.ts

nicht zu Ende, so dass die JS Regex für diese aussehen könnte:

*.\.[^d]\.ts 

, was die oben regex sollte bedeuten, ist etwas übereinstimmen, die mit .ts endet, die mit .d.ts

nicht zu Ende, aber natürlich sind wir stecken mit dem, was ich glaube, durch das Betriebssystem verwendet, um weniger leistungsstarke Regexes etc

Antwort

2

In der Dokumentation für .npmignore heißt es:

.npmignore Dateien folgen Sie den same pattern rules als .gitignore Dateien:

In diesem Fall können Sie die .d.ts Dateien in .npmignore unter Verwendung ! negieren können. Zum Beispiel in Ihrem .npmignore Sie einfach:

# ignore the .ts files 
*.ts 

# include the .d.ts files 
!*.d.ts 
+0

so das Include überschreibt die Ignorieren? –

+1

Ja, die '.npmignore' Konfiguration sagt einfach alles' .ts' (dh '* .ts') zu ignorieren und mit dem Apostroph' '' '' '' '' '' zu sagen, dass '. *. D .ts'), obwohl Sie die '.ts' Dateien mit der obigen Anweisung ignorieren. – RobC

+0

Ja, beachte, dass die Negation mit! muss soweit kommen, soweit ich das beurteilen kann. –

Verwandte Themen