Frage

Ich musste meinen Eclipse-Workspace von Linux auf Windows, als mein Desktop abgestürzt bewegen. Eine Woche später habe ich es zurück zu Linux zu kopieren, Code glücklich, verpflichten sich zu CVS. Und ach, Fenster Zeilenumbrüche haben viele Dateien verschmutzt, so CVS diff die gesamte Datei-Dumps, auch wenn ich eine Zeile geändert oder zwei!

Ich kann einen Skript kochen, aber ich frage mich, ob es verwirrt meine Eclipse-Projekt Dateien.

War es hilfreich?

Lösung

Wie bereits erwähnt hier und hier :

  

Set-Encodierung und Zeilenende für neue Dateien auf Unix UTF-8, so dass Textdateien in einem Format gespeichert werden, die nicht spezifisch für das Windows-Betriebssystem und die meisten leicht geteilt in heterogenen Entwicklern-Desktops ist:

     
      
  • Navigieren Sie zu dem Arbeitsbereich Einstellungen (General: Arbeitsbereich)
  •   
  • Ändern Sie den Text Datei-Codierung UTF-8
  •   
  • Ändern Sie die neue Textdatei Zeile Trennzeichen zu anderen und wählen Unix aus der Auswahlliste
  •   

alt text

  
      
  • Hinweis: die Zeilenende einer bestehende Datei zu konvertieren, öffnen Sie die Datei in Eclipse und wählt File : Convert Line Delimiters to : Unix
  •   

Tipp: : Sie können ganz einfach vorhandene Datei konvertieren, indem dann im Paket-Explorer auswählen und dann auf den Menüeintrag File : Convert Line Delimiters to : Unix gehen

Andere Tipps

hatte ich die gleichen, verschmutzte Dateien Eclipse sogar mit einer Zeile ändern. Lösung: Eclipse-git Einstellungen -> Eintrag hinzufügen: Key: core.autocrlf Werte: true

 image description hier

 image description hier

Es ist ein praktisches Dienstprogramm bash - dos2unix - das ist ein DOS / MAC zu UNIX-Konverter Textdateiformat ist, dass, wenn nicht bereits auf Ihrer Distribution installiert ist, sollte in der Lage sein, einfach über einen Paket-Manager installiert werden. dos2unix Manpage

Zusätzlich zu den Eclipse-Lösungen und das Werkzeug in eine andere Antwort , betrachten Flip . Es kann ‚Flip‘ oder so zwischen normalen und Windows-Zeilenumbrüche und schöne Dinge tut wie der Zeitstempel und andere Statistiken der Datei erhalten.

Sie können es wie folgt verwenden, Ihr Problem zu lösen:

find . -type f -not -path './.git/*' -exec flip -u {} \;

(I in einer Klausel setzen Sie Ihre .git Verzeichnis zu ignorieren, falls Sie git verwenden, aber da Flip binäre Dateien standardmäßig ignoriert, können Sie das nicht brauchen.)

Sie können es versuchen. Das Problem ist, dass Windows einen Wagenrücklauf sowie einen Zeilenvorschub einfügt, wenn eine neue Zeile gegeben. Unix-Systeme nur einen Zeilenvorschub ein. So dass die zusätzlichen Wagenrücklaufzeichen könnten der Grund sein, warum Ihre Eclipse mit den Zeilenumbrüchen vermasseln.

Schnappen Sie sich ein oder zwei Dateien von Ihrem Projekt und wandeln sie. Sie könnten Notepad ++, dies zu tun. Öffnen Sie einfach die Datei, gehen Sie auf Format-> Konvertieren in Unix (wenn Sie Windows verwenden).

In Linux nur versuchen, diese in einer Befehlszeile:

sed 's/$'"/`echo \\\r`/" yourfile.java > output.java

rekursiv Um die Zeilenumbrüche (\r) aus der CVS / * Dateien in allen untergeordneten Verzeichnissen zu entfernen, die folgend in einem Unix-Shell ausführen:

find ./ -wholename "\*CVS/[RE]\*" -exec dos2unix -q -o {} \;
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top