Le sous-système Windows pour Linux (WSL) fonctionne assez bien pour rendre la plupart des outils Linux en ligne de commande disponibles et travailler sur Windows sans modification. Cependant, cela devient un peu délicat pour le développement, quand on veut
- Construisez un projet à l'aide d'une chaîne d'outils Linux qui n'a pas d'équivalent Windows bien pris en charge (Ruby, Node, etc.)
- Modifiez les fichiers à l'aide d'un éditeur d'interface graphique Windows tel que le code Visual Studio.
Le problème est que les applications Windows ne peuvent pas modifier les fichiers à l'intérieur du système de fichiers lxss virtuel . La modification directe de ces fichiers est connue pour provoquer toutes sortes de problèmes.
Par conséquent, il ne semble y avoir que deux choix sous-optimaux en ce qui concerne l'utilisation de WSL pour le développement:
Stockez le projet sous lxss (
/home/foo
). La chaîne d'outils normale fonctionne correctement. Cependant, l'édition est limitée aux Vim / Emacs basés sur un terminal ou à tout ce qui peut être exécuté sous un serveur janky X , ce qui est moins fluide que les éditeurs natifs fonctionnant sous Windows.Stockez le projet sous le système de fichiers Windows (
/mnt/c/Users/foo
). Désormais, n'importe quel éditeur Windows peut être utilisé pour le développement. Cependant, la chaîne d'outils basée sur Linux est fragile car elle n'est pas conçue pour être utilisée sur un "lecteur réseau", et peut causer des problèmes avec l' observation des fichiers ou les bases de données .
Existe-t-il un moyen de tirer le meilleur parti des deux mondes ici - c'est-à-dire de pouvoir éditer à l'aide d'une application Windows native, tout en faisant fonctionner la chaîne d'outils Linux comme elle le ferait normalement sur un lecteur local?