2016-05-10 18 views
1

Ich arbeite an Windows 7 und habe ein node.js Projekt, das unter git ist. Ich habe meinen TortoiseGit auf autocrlf: false und eingestellt. Dann wurden die Zeilenenden aller Projektdateien in LF geändert. Das Projekt startet und funktioniert normal und ich sehe keinen Grund, zu CRLF zurückzukehren.Gibt es irgendwelche Nebenwirkungen von Unix-Zeilenenden beim Arbeiten auf Windows-Maschine?

Sollte ich irgendwelche Nebenwirkungen danach erwarten?

+2

Es zählt nicht als eine richtige Antwort, aber nein, Sie sollten nicht viel von einem Problem erwarten. Das einzige Programm, das im Nacken schmerzte, ist 'notepad.exe' - es zeigt Dateien mit Unix-Zeilenseparatoren als eine enorme Zeile an. – alf

Antwort

2

Nein, es gibt überhaupt kein Problem mit * nix Zeilenende-Sequenzen unter Windows (LF statt CRLF). In der Tat wäre meine persönliche Empfehlung, sicherzustellen, dass Ihr Windows-Editor (wenn Sie node.js unter Windows entwickeln) LF verwenden soll.

Nur als Beispiel verwende ich Visual Studio Code für meinen Redakteur node.js Entwicklung, und ich habe die folgende in meinen Benutzereinstellungen angegeben LF statt CRLF zu verwenden: "files.eol": "\n". Jetzt muss ich mir darüber keine Sorgen machen.

CRLF Zeilenenden verursachen Unterbrechungsprobleme in einer node.js-Anwendung, die unter Linux ausgeführt wird, und it isn't the most straightforward thing to troubleshoot if you don't know what to look for.

TL; DR Verwenden LF während node.js Anwendungen auf Windows zu entwickeln, wenn Sie wirklich über Cross-Plattform kümmern (was sollten Sie kümmern).

Hinweis: nur weil git ändert Ihre Zeilenenden bedeutet nicht, dass das die Lösung ist. Selbst wenn Sie mit der Versionskontrolle in Ordnung sind und Ihren Quellcode ändern (was ich nicht empfehle), wird Ihre Quelldatei lokal verwendet und Sie könnten CRLF s in die npm-Registry schleichen, wenn Sie eine npm publish machen.

2

Wenn alle Tools/Editoren/IDEs LF-kompatibel sind, dann gibt es kein Problem.

Andernfalls könnten beim Speichern Fehler oder gemischte Zeilenenden auftreten.

Um sicherzustellen, dass keine Konvertierung für andere Benutzer durchgeführt wird, die Ihr Repository klonen, können Sie eine .gitattributes Datei in den Stammordner einfügen, der Folgendes enthält: * -crlf, die alle crlf-Konvertierungen deaktiviert.