Ok, je vais être un peu plus moralisateur et descendre fermement du côté d'avoir une malle, les étiquettes & branches pour chaque projet.
L'alternative principale est d'avoir un seul tronc, les étiquettes & branches avec tous les projets en dessous. Cependant, cela conduit à un certain nombre de problèmes, dont un est important et je vais détailler ici:
Principalement, il ouvre la voie à la bibliothèque intouchable, où tout le monde a peur de toucher une bibliothèque particulière, car tout changement peut casser quelque chose de subtil dans un projet aléatoire. La raison en est que, puisqu'il n'y a pas de séparation entre les projets, n'importe qui peut effectivement modifier le code de votre projet sans que vous puissiez le détecter ou le contrôler.
Que se passe-t-il un jour où vous extrayez votre projet et qu'il se construit, le jour suivant vous l'extrayez et qu'il échoue, mais vous n'avez pas aucun changement à votre projet. Ce qui est arrivé, c'est que quelqu'un a changé une bibliothèque dont vous dépendiez. Dans une structure volumineuse avec de nombreuses dépendances, il est irréaliste pour un développeur de tester les modifications de sa bibliothèque par rapport à tous les projets, en particulier s'ils doivent apporter des modifications de rupture. Ce dont vous avez besoin dans votre projet est une référence à une version spécifique de la bibliothèque. De cette façon, la bibliothèque n'est mise à jour que lorsque vous modifiez la référence à la dernière version.
Ce type de référence a 3 effets: 1 votre projet est isolé des modifications de développement intermédiaires aléatoires de la bibliothèque. 2 vous obtenez une révision dans votre projet qui vous indique que "j'utilise maintenant cette version de la bibliothèque". 3. Vous pouvez contrôler quand vous apportez les modifications à votre projet pour tenir compte des changements de rupture dans la bibliothèque.
Il y a d'autres problèmes que je peux rencontrer si ce n'est pas suffisant.
C'est une bonne pratique qui s'est avérée efficace pour la plupart des gens. Dans notre société, nous utilisons une version légèrement modifiée et sommes heureux avec elle et vous devriez le faire. Si cela correspond à vos besoins, très bien! Sinon, validez n'importe quelle structure de répertoire que vous aimez. – Boldewyn
Vous dites "mieux", mais mieux que quoi? –
Merci à tous! Très appréciée. – PositiveGuy