Mmm... Je dirais mauvais principe de réflexion, changer le principe de réflexion plutôt que le logiciel.
Le gros problème de CVS est justement cette gestion par fichier : un tag peut alors être très incohérent, car le tag n'est pas précis dans le temps pour l'ensemble du logiciel.
Je suis passé il y a peu de CVS à SVN, ça m'a gonflé pas mal au début cette gestion des tags par la création obligatoire d'une branche pour le soft en entier, et puis... Après réflexion, c'est génial : c'est bien le soft en entier qu'on versionne, pas un fichier!
Dans ton exemple, TAG_V1 ne correspondrait pas un une V1 vraiment pendant que ton collègue n'a pas encore fait son patch. Ca serait inconsistant, une personne faisant un checkout sur ton soft en entier avec un filtre sur le Tag TAG_V1(qu'il verrait dans son gestionnaire, donc il se dira "super, la V1 est tagguée!) penserait avoir une V1, mais... Il lui manquera des fichiers, et ça ne compilera pas. Pas bon du tout.
[^] # Re: mettre un tag
Posté par Zenitram (site web personnel) . En réponse au journal Pourquoi Git m'importe ?. Évalué à 7.
Le gros problème de CVS est justement cette gestion par fichier : un tag peut alors être très incohérent, car le tag n'est pas précis dans le temps pour l'ensemble du logiciel.
Je suis passé il y a peu de CVS à SVN, ça m'a gonflé pas mal au début cette gestion des tags par la création obligatoire d'une branche pour le soft en entier, et puis... Après réflexion, c'est génial : c'est bien le soft en entier qu'on versionne, pas un fichier!
Dans ton exemple, TAG_V1 ne correspondrait pas un une V1 vraiment pendant que ton collègue n'a pas encore fait son patch. Ca serait inconsistant, une personne faisant un checkout sur ton soft en entier avec un filtre sur le Tag TAG_V1(qu'il verrait dans son gestionnaire, donc il se dira "super, la V1 est tagguée!) penserait avoir une V1, mais... Il lui manquera des fichiers, et ça ne compilera pas. Pas bon du tout.