2015-09-09 12 views
14

Eseguo Windows e quando npm modifica il file package.json, lo scrive utilizzando terminazioni di linea in stile Unix (LF). Voglio utilizzare terminazioni di linea stile Windows (CRLF).Come posso configurare npm per utilizzare le terminazioni di linea in stile Windows in package.json?

Esiste un'impostazione di configurazione globale o anche un'opzione della riga di comando per rendere npm utilizzare i caratteri EOL corretti?

+0

Non penso che le terminazioni di riga possano essere modificate dalle opzioni NPM config o cli. Ma se si sta usando git allo stesso tempo, suggerisco di abilitare la conversione automatica da 'git config core.autocrlf true'. Quindi quando si esegue 'git add', le terminazioni di riga vengono convertite automaticamente e non generano un commit aggiuntivo. – Israfel

risposta

4

Supponendo Git, la "soluzione" più semplice a questo problema è quello di utilizzare un file .gitattributes per specificare che package.json (e ora package-lock.json) dovrebbe sempre utilizzare LF:

# .gitattributes in project root 
package.json text eol=lf 
package-lock.json text eol=lf 

(Questo problema viene monitorata here.)

+0

Fantastico. Nota puoi anche usare un carattere jolly: 'pacchetto * .json text eol = lf' – emackey

+0

Ho discusso usando il carattere jolly ... ma cosa succede se un progetto include qualche altro file che inizia con' pacchetto' e finisce con '.json'? ! (L'ottimizzazione prematura è divertente). – dahlbyk

Problemi correlati