
Wie für viele Entwickler war der .idea-Ordner in Android Studio für mich immer wie eine Black Box: Ich wusste, dass er existiert, ich wusste, dass er immer zu .gitignore hinzugefügt wurde, aber ich beschloss herauszufinden, warum sie benötigt werden oder andere Dateien und Ordner, damit ich die Möglichkeit habe, manchmal auftretende Git-Konflikte zu behandeln und genau zu wissen, welche Datei sicher zu .gitignore hinzugefügt werden kann und welche nicht.
Ich habe es am Beispiel des Projekts herausgefunden, an dem ich arbeite. Und ich beschloss, das Ergebnis von dem, was ich herausgefunden habe, zu teilen, weil Ich habe keine Dokumentation dazu gefunden.
.gitignore
den Pfad an, der zu .gitignore
hinzugefügt werden .gitignore
.gitignore
den Pfad an, den Android Studio bereits zu .gitignore
hinzugefügt .gitignore
, und Sie sollten ihn nicht .gitignore
.
gibt den Pfad an, den Sie in git speichern sollen.
AssetWizardSettings.xml
In dieser Datei wird das zuletzt über die Android Studio-Oberfläche hinzugefügte Symbol gespeichert. Es kann sicher aus VCS entfernt werden.

Caches
Caches können, wie der Name schon sagt, sicher zu .gitignore
hinzugefügt .gitignore
.
Ich sehe keinen Grund, es in VCS zu behalten, aber standardmäßig wird dieser Ordner nicht zu .gitignore
hinzugefügt.
caches / build_file_checksums.ser
Tatsächlich ist diese Datei eine serialisierte Instanz von ProjectBuildFilesChecksums .
Die Datei wird benötigt, um zu überprüfen, ob build.gradle
, settings.gradle
, local.properties
, ~/.gradle/gradle.properties
, gradle.properties
oder die build.gradle
Dateien Ihrer Module build.gradle
.
Android Studio verwendet diese Datei, um Ihnen mitzuteilen, dass Sie Gradle-Dateien synchronisieren müssen.
codeStyles
Dieser Ordner enthält die Einstellungen für den Projektcodestil. Es ist nützlich, es zu versionieren, wenn Sie die Standardcodestile geändert haben.
Wörterbücher
Der Ordner enthält den Eintrag, den Sie dem Wörterbuch hinzugefügt haben, um den Code zu überprüfen. Dieses Wörterbuch ist wichtig, wenn Sie strenge Regeln in Ihrem CI-System haben.
gradle.xml
Ich empfehle diese Datei aus git zu löschen. Es kann den lokalen Pfad zu Ihrer Version von gradle sowie den Pfad zu Ihrem Modul enthalten. Sie können beispielsweise ein Modul in einem separaten Repository entwickeln, sodass der Pfad zum Modul für jeden Benutzer spezifisch sein kann.
Aus all diesen Gründen lösche gradle.xml
Datei gradle.xml
dauerhaft aus VCS.
Inspektionsprofile
Dieser Ordner enthält spezielle Lint-Regeln für Ihr Projekt. Daher sollte es genau wie der dictionaries
in git gespeichert werden.
Bibliotheken
Es enthält eine Datei, die angibt, wo die JAR-Dateien Ihrer Bibliotheken gespeichert sind. Da der Downloadpfad für jeden Benutzer spezifisch sein kann, sollten Sie diesen Ordner nicht in VCS speichern.
misc.xml
Die Datei enthält Informationen zum Projekt: Java-Version, Projekttyp usw.
Diese Informationen beziehen sich auf das Projekt und sind nicht benutzerabhängig. Daher sollte es in Git gespeichert werden.
modules.xml
Diese Datei enthält die Pfade zu den .iml
Dateien Ihrer Module. In Analogie zu gradle.xml
es daher nicht in git gespeichert werden.
navEditor.xml
Hier werden Ihre Artikel im Navigationseditor gespeichert. Wenn diese Informationen für Ihr Projekt relevant sind, sollten Sie diese Datei in git speichern. Andernfalls können Sie es zu .gitignore
hinzufügen, um zukünftige Konflikte zu vermeiden.
runConfigurations.xml
Der Dateiname weist möglicherweise darauf hin, dass er Konfigurationen enthält, die Sie hinzufügen können, indem Sie auf "Konfigurationen ändern" klicken. Diese Datei muss in VCS gespeichert werden.

vcs.xml
Diese Datei enthält Informationen zu VCS, die Sie in Ihrem Projekt verwenden. Es wird verwendet, damit Sie die grafische Oberfläche verwenden können, um Versionskontrollvorgänge auszuführen. Es lohnt sich auch, git hinzuzufügen.
workspace.xml
Es enthält Informationen zu Ihrem Arbeitsbereich in Android Studio. Zum Beispiel die letzte Cursorposition in der Datei, die Sie öffnen. Dies sind also definitiv Benutzerinformationen, die nicht in git gespeichert werden müssen.
Zusammenfassung
Ich würde vorschlagen, dass Sie der Standard- .gitignore
Datei nur drei Zeilen .gitignore
:
/.idea/assetWizardSettings.xml /.idea/gradle.xml /.idea/caches # Uncomment next line if keeping position of elements in Navigation Editor is not relevant for you # /.idea/navEditor.xml
Wie ich am Anfang dieses Artikels sagte, habe ich keine Dokumentation zum Inhalt des .idea
Ordners gefunden, sodass der Artikel möglicherweise unvollständig und / oder nicht 100% genau ist. Wenn Sie etwas anderes wissen, das nicht in diesem Artikel enthalten ist, schreiben Sie darüber in den Kommentaren.