Il progetto utilizza Maven in modo che i file POM siano le principali fonti di informazioni sul progetto. Ci sono alcune impostazioni utili nei file di progetto che sarebbe bello conservare.Best practice per IntelliJ IDEA 9 + Maven + Controllo versione
OTOH IDEA sembra creare troppe modifiche ridondanti nella struttura del file di progetto che inquina la cronologia SVN e talvolta crea conflitti.
Devo mantenere la directory .idea ei file * .iml sotto controllo versione? in toto? in parte?
Aggiornamento: Quindi la migliore pratica che ho trovato a lavorare per me e la mia squadra è finora:
- Check in tutti i file di IDEA, * .iml e .idea directory. Contengono informazioni preziose ed è una perdita di tempo per ricrearlo ogni volta che si aggiorna.
- Creare ramo privato per ogni sviluppatore
- cd nella directory .idea
- svn passare al suo ramo controparte privata
- Non check-in file idea su commit regolari - inquinano storia. Controllali in speciali commit.
In questo modo, si mantiene il contenuto della directory .idea nel controllo della versione ma si tiene fuori dalla modalità di commit regolari. Qualsiasi sviluppatore può avere accesso alle directory IDEA di qualcun altro.
Aggiornamento 2: Dal momento che questa domanda è stato scritto, ho cambiato la mia pratica di non il check-in qualsiasi file IntelliJ nel controllo di versione, come consigliato da molti soccorritori. Questa è la mia pratica corrente sia per Maven che per Gradle. Gli strumenti si sono sviluppati al punto che le informazioni critiche possono sempre essere riprodotte dai file originali .POM o .gradle. Quando i file cambiano, l'IDE tiene traccia delle modifiche in modo affidabile in modo da non perdere i file IDE che spesso quindi non c'è bisogno di controllare loro in
Aggiornamento 3:. 7 anni dopo aver chiesto questa domanda sembra essere ancora rilevante. Le stesse migliori pratiche si applicano anche a Gradle (probabilmente anche SBT): non controllare i file IDE, ricrearli se necessario dai file POM, .gradle o SBT di base.
Grazie a tutti per i vostri suggerimenti. Nel frattempo, la mia migliore pratica è quella di controllare i file IDEA ma come un changeset separato in modo da non rovinare la storia SVN. Di solito attribuisco a questi changeset il nome "follia IDEA" :-) –
vedere http://stackoverflow.com/questions/3041154/intellij-idea-9-10-what-folders-to-check-into-or-not- check-in-source-contro -> Domande frequenti IDEA: http://devnet.jetbrains.com/docs/DOC-1186 –
@MatthewCornell forse aggiorna il tuo commento per rispondere? –