Bonjour,
Je travaille régulièrement sur plusieurs solutions pour créer des outils spécifiques à des clients.
En revanche, j'ai tendance à réutiliser régulièrement des pans entiers d'un programme dans un autre, notamment des classes dédiées à faire des actions communes à tous les programmes.
C'est quelque chose que j'ai énormément de mal à gérer proprement dans Visual Studio et Git.
Solution 1 :
- Compiler une DLL, la mettre dans Git, et utiliser une inode dans les autres projets lors de l'import de la DLL
=> Problème : si quelqu'un fait évoluer la DLL, elle n'est pas mise à jour dans les différents repos des autres projets dans devoir pull le projet partagés.
Solution 2 :
- Ajouter le projet dans les différentes solutions. Seulement c'est pas dans le même dossier sur le disque et Git se perd.
Solution 3 :
- Idem solution 2 mais en faisant une inode à partir du dossier de la solution vers le dossier du projet partagé.
=> À nouveau c'est le bordel si on travaille sur plusieurs projets, Git se perd et on a des versions différentes d'un projet à l'autre, des modifs poussées plusieurs fois, etc.
Bref. Comment gérer ça proprement ?
Reste bien la solution de publier un nuget, mais je vais pas s'oublier un truc que se moi utilisé... D'autant que j'ai pas forcé envie de partager mon code...