Je suis l'un des deux développeurs de certains logiciels internes (écrits en python) dans mon entreprise. Le logiciel est une application serveur conçue pour fonctionner sur une boîte Linux dédiée. Actuellement, nous avons une boîte contenant notre référentiel SVN et cette boîte est également utilisée pour les tests. Le problème est que je le développe sur mon poste de travail en utilisant Eclipse sur Windows et que cette application ne peut pas fonctionner sur Windows.
Comment organiser correctement un tel environnement afin de ne pas perdre de temps précieux sur le transfert du projet et du code pour pouvoir le tester?
Actuellement, je fais la vérification de svn, je change du code et je le télécharge sur le serveur de développement pour le tester (pas via svn). Testez-le sur le serveur, changez quelque chose, testez-le à nouveau, etc. Après tout cela vient le commit. Ce téléchargement et ces tests constants me rendent fou. J'ai essayé de garder le projet sur le serveur (paiement dans le répertoire home) mais cela cause beaucoup de problèmes avec Eclipse.
Évidemment, je n'ai pas beaucoup d'expérience dans ce domaine, donc je demande quelles sont les meilleures pratiques concernant ce type de problèmes?
la source
La meilleure solution à mon avis serait d'utiliser un environnement virtualisé pour les tests, si votre PC local a les ressources pour en exécuter un.
Pour quelques recommandations sur des produits spécifiques, vous pouvez voir ma réponse à une question sur StackOverflow , mais en général, cela signifie que vous aurez un deuxième PC Linux en cours d'exécution à l'intérieur de votre actuel. J'utilise cela pour le développement PHP sur Windows tout le temps et cela fonctionne très bien pour moi. Vous pouvez partager votre base de code avec SSH / ExpanDrive ou si vous utilisez VirtualBox, puis consultez les dossiers partagés .
la source
Suggestion 1: travaillez directement sous Linux, si vous avez le temps de l'apprendre. Apprendre comment fonctionne un autre système d'exploitation est vraiment formidable pour votre expérience personnelle, et ajouter à votre CV que vous savez comment utiliser Linux ne fait pas de mal. Eclipse existe également sous Linux, vous ne perdez donc rien par rapport à Windows.
Suggestion 2: installez Linux sur une machine virtuelle localement. Il vous permettra de tester l'application sans avoir à la publier à chaque fois sur un serveur distant.
Remarque: comment pouvez-vous éventuellement écrire une application qui cible Linux si vous travaillez avec Windows? C'est un cauchemar!
la source
Si vous utilisez eclipse, il y a un plugin parfait pour vous: Filesync Je l'utilise tout le temps et je suis sûr que vous allez l'adorer.
Voici ce que je fais d'habitude car je travaille dans les mêmes conditions que vous.
Je récupère le projet de SVN en utilisant Eclipse sur ma machine. Ensuite, je synchronise mon projet local sur le serveur dev | test distant en excluant les fichiers comme .project et autres. Je vous recommande également de mettre votre clé SSH sur le serveur distant pour accélérer la connexion.
Et voilà! Vous pouvez maintenant travailler localement et eclipse synchronisera automatiquement toutes les modifications que vous effectuez sur le serveur distant. Lorsque tout est bien testé et prêt à être livré, vous pouvez aussi vous engager avec eclipse! Pas besoin de mastic!
J'espère que cela aide!
la source
J'ai réussi à écrire du code c # / mono dans Visual Studio et à déboguer à distance sur une boîte Linux à partir de VS en utilisant un plugin de débogueur à distance GDB. Fonctionne incroyablement bien. J'imagine que ce serait plus rapide si votre installation Linux est dans une machine virtuelle locale (il y a une belle appliance VMWare Ubuntu disponible sur le web), mais j'avais besoin d'un ensemble de cartes GPU Tesla qui n'étaient pas installées dans mon ordinateur portable.
Recherchez WinGDB. Ce n'est pas gratuit, mais fonctionne incroyablement bien.
la source