Bonjour,
J'aimerais utiliser GIT pour avoir un versionning de mes sources. J'ai donc réalisé quelques tests avec GIT qui à l'avantage d'être gratuit.
Cependant je butte sur ce qui semble être un problème d'organisation/gestion de mes projets et de mes solutions. Dans mon organisation actuelle j'ai une solution par application finale. Ces solutions listes des projets de dll + le projet de l'application. Je procède ainsi puisque les dll peuvent être utilisées dans différentes applications. Mes sources sont donc toutes dans un dossier qui contient un dossier par projet de dll et un dossier par projets d'application. Ces derniers contenant un fichier csproj et un sln.
Pour imager j'ai par exemple :
../Sources
../Sources/Article/Article.csproj
../Sources/Article/*.cs
../Sources/Client/Client.csproj
../Sources/Client/*.cs
../Sources/ApplicationSaisieCommande/ApplicationSaisieCommande.csproj
../Sources/ApplicationSaisieCommande/Main.cs
../Sources/ApplicationSaisieCommande/ApplicationSaisieCommande.sln
article.csproj génère Article.dll
client.csproj génère Client.dll
et ApplicationSaisieCommande.csproj génére ApplicationSaisieCommande.exe
Si j'ouvre ApplicationSaisieCommande.sln je vais avoir les 3 projets dans mon explorateur de solution et peut-être qu'un jour je vais retirer Article car rien ne bouge dans le projet article depuis longtemps car je travaille sur un autre domaine... et si j'en ai besoin je vais le recharger dans la solution.
Donc pour moi les projets listés dans une solution peuvent être fluctuant, je pense pouvoir dire que je gère mes sources au niveau projet (csproj) et non pas au niveau d'une solution.
En voulant brancher git sur une telle organisation j'ai visiblement 2 choix :
- soit je crée une solution par csproj et donc un repo par projet et par solution. Sauf que si je charge les projets dll dans la solution de l'exe je n'ai pas accès au contrôle de code source de la dll, il faut forcément repartir de la solution de la dll pour pouvoir valider les modifications réalisées.
- soit je mets tous les dossiers des sources des dll dans le dossier de l'application, a coté de ApplicationSaisieCommande.sln, alors je peux gérer le controle de code source sur l'ensemble des projets, mais cela me pose un problème car mes dll peuvent être appelées depuis plusieurs applications ... il me semble donc mal venu de les placer arbitrairement dans une application.
Donc si quelqu'un avait un retour d'expérience sur son utilisation de git + visual studio ça pourrait m'aider.
Je ne suis pas forcément réfractaire au changement et si vous trouvez que mon organisation n'est pas génial/fonctionnelle/idéale ... n'hésitez pas. Dans tous les cas je veux avoir un versionning de mes sources peut importe si je dois revoir mon organisation.
Merci déjà pour ceux qui seront allés au bout de ce pavé.
J@ck.
Partager