Sto utilizzando EGit su un insieme di progetti Java abbastanza grande e complesso (più di un milione di righe di codice) e un decennio di storia.
Qui sto affrontando seri problemi di prestazioni con EGit, poiché anche una piccola modifica di una riga nel file Java fa sì che EGit ri-indicizzi per un paio di minuti, il che sta rallentando l'intero sistema. Infatti, anche la riga di comando git è un po 'lenta poiché "git status" impiega circa un minuto dalla riga di comando, ma posso vivere con questo problema di prestazioni, & Problema di lentezza della finestra di dialogo commit commit (link). Come posso usare git command line per commettere e aggiornare, ma non voglio compromettere le mie prestazioni di Eclipse in quanto ciò influisce sulla produttività.Suggerimenti sull'ottimizzazione dell'Egit su Eclipse
Quello che segue è quello che ho cercato facendo usare Google e chiedere alla gente in giro:
- Aggiunto cartella tutte le classi nel file escludere. Effettivamente provato a mettere la cartella delle classi in .gitignore pure per tempo.
- Dato necessario Tempo sufficiente per terminare l'indicizzazione mantenendo la macchina accesa per un giorno.
- Lo staging Git, la cronologia e tutte le altre viste Eclipse vengono chiuse nel workbench di Eclipse durante lo sviluppo.
- Ha fatto "git gc" - Ha fatto la differenza sulle prestazioni della riga di comando, ma praticamente nessuna differenza per EGit.
- Decoratore di etichette non selezionato per Git. Preferenze -> Generale -> Aspetto -> Decorazioni etichetta.
- Rimosso il cygwin dal percorso, come letto da qualche parte nel forum che JGit potrebbe utilizzare cygwin per la conversione del percorso.
- Aumentata la cache della finestra da 10 a 70 m in Eclipse (Preferenze -> Team -> Git -> finestra cache).
PS: repository Git punta al repository svn remoto. Inoltre, sono git newbie quindi potrebbe aver fatto qualche errore nel setup, quindi per favore sentitevi liberi di indicare qualsiasi cosa.
Ecco le informazioni sul mio sistema, non ho molte specifiche hardware di fantasia, ma un po 'di RAM da risparmiare (8 GB).
- versione git-gui 0,16 GITGUID
- versione git: 1.7.10.mysysgit.1
- JDK 1.6_025
- Eclipse versione: La versione 3.7.2 Java EE con i parametri -Xms1536m -Xmx1536m
- EGit: 1.3.0.201202151440
- Windows 7 processore: core 2 Duo 2,6 GHz
VonC - Accetto, ma c'è sicuramente qualche problema con l'implementazione di Egit, visto che lo stesso grande repo git si comporta abbastanza bene su Linux con IntelliJ), anche se sono d'accordo che i file system di Linux sono molto più veloci. Quindi, posso creare un repo Git centrale che è clone di SVN e quindi avere più repo Git multipli dal repo centrale Git gigante? – Hemant
@Hemant no, non è possibile (non con la possibilità di riprendere il repository SVN). È possibile definire un repo Git che dichiara tutti i piccoli come sottomoduli, ma non ci sarà alcun collegamento con un repository SVN. Ciò lascia un meccanismo di sincronizzazione manuale. – VonC
Vonc - Grazie per averlo chiarito. Continuerò ad esplorare le mie opzioni ... inoltre spero che il team di Egit esegua un po 'di ottimizzazione delle prestazioni più velocemente. – Hemant