2017-06-13 3 views
0

Ich habe einige Zeilen Code in einer bestimmten Klasse geändert und jedes Mal, wenn ich versuche, sie zu committen, behauptet GitKraken, dass ich versuche, die ganze Klasse zu committen. Alle 1000 Zeilen davon.IntelliJ Idea schreibt die gesamte Klasse in das Repository

Ich denke, dies ist eine Art von automatisierten Code-Styling in IntelliJ IDEA getan. Ich kann die tatsächliche Veränderung nirgends sehen, aber es muss so sein.

Gibt es eine Einstellung, die IDEA daran hindert, solche Stylings automatisch auf Klassen anzuwenden?

EDIT 1 - Mehr Informationen zu dem Problem:

Dieses Problem tritt nur in dieser einer bestimmten Klasse. Mein Kollege überprüfte seine Code-Styling-Einstellungen in seiner IDEE und sie sind identisch mit meinen.

EDIT 2 - Weitere Informationen über das Problem:

In Notepad ++, wenn diese bestimmte Klasse „jedes Zeichen zeigt“ hat CR erst am Ende der Leitungen während alle anderen Klassen CR LF haben.

Keine Ahnung, warum das ist. (Wortspiel nicht beabsichtigt)

Irgendwelche Ideen, wie das zu beheben? (Wortspiel beabsichtigt nicht)

EDIT 3 - die Lösung gefunden:

In Notepad ++ ist es möglich, auch diese nicht sichtbare, Sonderzeichen zu ersetzen, so haben wir den LF am Ende jeder Zeile und jetzt Es klappt. Nicht sicher, warum diese überhaupt verschwunden waren.

Antwort

1

Es gibt einige Möglichkeiten, dies zu erreichen. Persönlich verwende ich verschiedene Codestile für meine eigenen und Open-Source-Projekte.

Es bedeutet, dass, wenn Sie wissen, dass Sie an einem Projekt mit einer bestimmten Code-Konvention arbeiten, es wert ist, 20-30 Minuten zu verbringen, um den richtigen Code-Stil zu konfigurieren.

Sie können sie in Einstellungen konfigurieren ->-Code Stil:

Die nützlichsten Einstellungen sind:

  • Tabs und Einzüge (dies ist wahrscheinlich das, was Sie konfrontiert)
  • Blank Linien
  • Importe

IntelliJ Code Style

Sie können mehr über die Konfiguration von Code-Stil in der offiziellen Dokumentation: Configuring Code Style

Und auch sicherstellen, dass Sie nicht Leerzeichen ignorieren, während Sie den Code bewerten:

Intellij IDEA ignore whitespace

+0

Vielen Dank für die großartige und ausführliche Antwort, aber mein Kollege überprüfte seine Code-Styling-Einstellungen und sie scheinen identisch zu sein. Dieses Problem tritt auch nur in dieser Klasse auf. Ich werde meine Frage aktualisieren. –

+0

@SteveWaters Was ist der Unterschied zwischen festgeschriebener und roher Datei? In Zeilenumbrüchen oder Leerzeichen? –

+0

Ich aktualisierte die Antwort, um darauf näher einzugehen. GitKraken zeigt, dass das Commit die WHOLE-Klasse in einer Zeile ohne Zeilenumbrüche ist :) wie in "package my.project; import my.project ..." etc. die nächste Zeile beginnend mit dem Semikolon in derselben Zeile. –