Question

J'ai une base de code PHP assez volumineuse (10k fichiers) avec laquelle je travaille en utilisant Eclipse 3.4 / PDT 2 sur une machine Windows, alors que les fichiers sont hébergés sur un serveur de fichiers Debian. Je me connecte via un lecteur mappé sous Windows.

Malgré le fait qu’une connexion Ethernet 1Gbit est disponible, l’actualisation du projet Eclipse est assez lente. Jusqu'à 5 minutes Et cela me bloque de travailler pendant que cela se produit.

Cela ne serait normalement pas un problème car Eclipse ne devrait théoriquement pas avoir à effectuer une actualisation complète très souvent. Cependant, j'utilise également le plugin subclipse, qui déclenche une actualisation complète chaque fois qu’il achève un basculement / une mise à jour.

Mon impression est que la partie la plus lente du processus est l'éclipse qui vérifie les fichiers 10k un par un pour vérifier les modifications apportées à samba.

Il y a un grand nombre de fichiers dans la base de code auxquels je n'aurais jamais besoin d'accéder depuis eclipse, je n'en ai donc pas besoin pour les vérifier du tout. Cependant, je ne vois pas comment l'empêcher de le faire. J'ai essayé de les marquer 'dérivés'. Cela les empêche d’être inclus dans le processus de construction, etc. Mais cela ne semble pas accélérer le processus de rafraîchissement. Il semble qu'Eclipse vérifie toujours leur statut modifié.

J'ai également supprimé les dossiers inutiles du 'chemin de compilation' de PDT. Cela accélère le processus de "construction de l'espace de travail", mais là encore, cela n'accélère pas l'actualisation qui précède la construction (et qui prend le plus de temps).

Était-ce utile?

La solution

Merci à tous pour vos suggestions. En gros, JW était sur la bonne voie. Travaillez localement.

À cette fin, j'ai découvert un plugin appelé FileSync: http://andrei.gmxhome.de/filesync/

Ceci copie automatiquement les fichiers modifiés sur le partage réseau. Fonctionne à merveille. Je peux maintenant effectuer une mise à jour / une commutation / une actualisation complète à partir d’Eclipse en quelques secondes.

Autres conseils

Devez-vous stocker les fichiers sur un partage? Vous pouvez peut-être configurer une sorte de mise en miroir automatique afin de travailler avec les fichiers localement et de les copier automatiquement sur le partage. Je suis dans une situation similaire et je n’aimerais pas abandonner la vitesse de modification de fichiers sur ma propre machine.

Etant donné que cela est subversé, pourquoi ne pas disposer les fichiers localement et utiliser un hook post-commit pour mettre à jour la dernière version sur le serveur de développement après chaque commit? (ou avez une chaîne spécifique dans le journal de validation (par exemple '## DEPLOY ##') lorsque vous souhaitez mettre à jour dev, et exécutez la mise à jour uniquement lorsque le hook de post-validation voit cette chaîne).

Hormis les accélérations de rafraîchissement, cette technique présente l'avantage de pouvoir avoir des fichiers cassés sur lesquels vous travaillez dans eclipse, et que le serveur de développement fonctionne toujours (même avec une version plus ancienne du code).

L'inconvénient est que vous devez faire un commit pour envoyer vos fichiers sauvegardés sur le serveur de développement.

Utilisez la fonctionnalité de dossier hors connexion dans Windows en cliquant avec le bouton droit de la souris et en sélectionnant "Rendre disponible hors connexion". Cela pourrait économiser beaucoup de temps et de temps de parcours dans le protocole de partage de fichiers.

Utilisation de svn externals avec les Un indicateur de révision pour les éléments non changeants pourrait empêcher le sous-clip d'actualiser ces fichiers lors de la mise à jour. Là encore, il se peut que non. Étant donné que vous devez apporter quelques modifications à la structure de votre référentiel de subversion pour le faire fonctionner, je vous suggère de faire quelques tests simples avant de le faire pour de vrai.

J'ai résolu ce problème en modifiant "Taille du tampon de transfert de fichiers". à:

Fenêtre- > Préférences- > Fichiers de systèmes distants et modifiez les valeurs de "Taille de la mémoire tampon de transfert de fichier" -s Télécharger (Ko) et Télécharger (Ko) en valeurs élevées, je le règle sur 1 000 kb;

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top