Citation:
Envoyé par
gagaches
sachant que le code est la traduction des besoins métiers, et donc de leurs spécificités ...
c'est le serpent qui se mort la queue.
Oui, "traduction"…*On veut savoir pourquoi tu a traduit comme ça, pas la signification…
Citation:
Il y a bien un élément de difficulté quand on fait un calcul partiel.
Et oui, le commentaire est fiable dans ce cas. Et bien sûr que j'ai gagné du temps.
Le dev a indiqué ce qu'il voulait faire ...
un coup d'oeil à la spec ensuite pour vérifier que l'implémentation est bonne et fin.
La vérification de l'implémentation dans ton cas, c'est entre le commentaire qui donne l'intention et le code en dessous, la spec, c'est pour vérifier que l'intention correspond à la demande… Bref, tu multiplie la charge de travail par 2…
Citation:
Ensuite, je veux bien voir la gueule de ton code, de tes versions et de tes git avec la mode actuelle du CI qui amène à faire 10x commits / jour sur la même anomalie/même bug, afin que les tests passent dessus.
Car oui, prétendre qu'une correction d'anomalie est unitaire à un seul commit, c'est faux.
Quelle mode ? Il y a un principe pour les SCM centralisés qui consiste à "commiter régulièrement" car leur méthode de gestion des changesets conduit à une gestion des merges manuelle lorsque ceux-ci sont trop complexes. Dans le cas des SCMs décentralisés, chacun est libre de commiter comme il veut mais il doit squasher ses commits avant de publier. Un gestionnaire des sources qui fait bien son boulot n'accepte jamais un pull request non squashé. Donc une correction d'anno (simple, gérable en un seul ticket) doit se résumer à un commit sur le référentiel. Et si il y a eu des aller-retour avec la validation, ça se réorganise aussi avant l'incorporation dans le Master…
Citation:
Sans parler des commit dégueulasses en mode "commit." sans détail, mais c'est un autre sujet.
On reste sur le sujet de la qualité, ici idem, si le responsable du référentiel a accepté un pull request non commenté, c'est lui qu'il faut voir.
Citation:
On va avoir potentiellement plusieurs commits successifs avec des évolutions partielles, rien que pour la recette unitaire et les tests et on va partir en archéologie dans les X dernières versions commitées pour comprendre de quoi ça retourne.
Idem, squash, ou feature branches…
Citation:
Après, oui, les systèmes de gestion de code source ou de gestion de configuration (git, svn, clearcase) et les outils de tracking d'issue associés (jira, redmine, clearquest, ...) permettent un suivi des ano/évol.
Par exemple, à l'époque de Clearcase/clearquest, on pouvait lors de l'équivalent du commit forcer l'association par un champ dans une liste déroulante à une issue créée dans clearquest qui portait et réalisait le diff global du code associée.
Donc code modifié forcément associé à une issue (ano, évol, ...) et avec un risque d'erreur "minime".
De nos jours, la liaison reste plus laxe et il faut rajouter des *commentaires* (:mrgreen:) dans le commit avec une référence à une issue des bugtrackers (jira, redmine, ...) pour faire le suivi des diffs.
une coquille dans le commentaire et la liaison ne se fera plus.
Nope… Toujours le cas. En fait, "avant", tu était peut être dans un contexte où les gens bossaient correctement (en admettant l'illusion que l'on puisse bosser correctement avec ClearCase…). Avant…
Bref, toi tu voudrait peut être voir mon code, moi je sais que je ne veux pas voir le votre.