Comment doit-Git de Flux de travail avec les contrôles de qualité à la fois une libération et une nouvelle fonctionnalité?

Nous utilisons Git Flow sur notre dernier iOS projet et je suis en train de travailler sur une façon de travailler avec la QA de sorte qu'ils puissent tester la dernière version, ainsi que de tester une nouvelle fonctionnalité, sans avoir à se soucier des bugs ont été corrigés dans la branche.

À l'heure actuelle, ils ont été à l'essai sur l' release/v1.0.1 de la branche, qui a plusieurs bugs corrigés à partir de l'original release/v1.0. Parallèlement, je travaille sur une nouvelle fonctionnalité qui a été prévu pour la v1.1 libération, mais était ramifications de la develop branche en même temps que release/v1.0.1 et, par conséquent, n'a aucune des corrections de bugs en elle.

Aujourd'hui, l'assurance de la qualité dept aimerais profiter de ma nouvelle fonctionnalité pour un essai routier. Cependant, si je créer un build de ma branche, aucune des corrections de bugs qu'ils ont testés et fermée sera là. Je vais donc recevoir un déluge de plaintes et de panique à propos de bugs qui ont été réintroduits... que je veux éviter!

Alors, quelle est la meilleure manière de les faire tester cela? J'ai pu fusionner release/v1.0.1 dans ma branche, mais je dois m'assurer de ne pas se réinsèrent dans la develop avant release/v1.0.1 a été libéré... Et je suppose que, dans une certaine mesure, cela rompt avec le Git méthode de Flux. Je pourrais créer une toute nouvelle branche juste pour les contrôles de qualité, qui se mêle de ma fonction avec release/v1.0.1, mais alors que dois-je faire avec tout les bugs qu'ils trouvent sur cette branche? Où dois-je l'intégrer dans après la ronde de QA?

Sur le dessus de tout cela, je dois considérer les numéros de version et les numéros de version, de sorte qu'ils font sens. Actuellement, les numéros de version sont ceux utilisés pour la libération, et des numéros de version est incrémenté à chaque nouvelle version d'assurance de la qualité. Cependant, s'ils reçoivent des construit à partir de deux branches distinctes, je pourrais terminer avec le numéro de build affrontements qui serait une source de confusion.

Quelle serait la meilleure façon de traiter ces problèmes?

  • Comme il s'avère, nous espérons obtenir l'assurance qualité, pour finir de tester la version 1.0.1 en premier, ce qui signifie que nous pouvons l'intégrer à créer et à développer une nouvelle version 1.1 avec les nouvelles fonctionnalités pour eux de le tester... Mais il serait très utile de savoir si d'autres ont le même dilemme quand il s'agit de Git Flux de QA et de flux de travail.
  • master est fusionné à quand une nouvelle version est prête, comme par git flow protocole. Je n'ai pas mentionné master dans mon flux, depuis release/v1.0.1 n'est pas encore fini, et n'est donc pas prêt à être fusionnée dans master ou develop.
  • Je vais fusionner release/v1.0.1 en master lorsqu'il a été approuvé par l'AQ, mais actuellement, il y a quelques bugs à résoudre sur cette branche.
  • Vous n'avez pas à attendre jusqu'à ce que release/v1.0.1 est sans bug avant de fusionner de nouveau dans develop. Si vous regardez le premier diagramme sur la nvie.com page, vous verrez une bulle qui lit les "Corrections de bugs de rel. branch peut être continuellement fusionnée dans develop".
  • Vous aurez encore à fusionner les finalisé release/v1.0.1 en develop après l'assurance qualité, l'approuve, mais, avant que cela arrive, vous êtes censé continuellement de fusion de l'ancien dans cette dernière que vous allez.
  • Vous êtes également censé continuellement de fusion develop dans votre branche (ou, éventuellement, rebase votre branche sur develop, dans le cas où vous n'avez pas partagé votre branche encore), afin de garder à jour avec le dernier.
  • C'est une information très utile, merci. J'ai été sérieusement envisagé de fusionner les changements de versions de develop, mais n'était pas certain si elle allait se briser le Git modèle d'Écoulement... je n'avais pas vu cette partie du diagramme. 🙂
  • Connexes; stackoverflow.com/questions/18371741/...
  • Où faut-il dire que nous devons être continuellement la fusion de développer dans nos branches @Jubobs? Je vois plusieurs choses se passent dans la développer sans fusion de la branche dans votre réponse ci-dessous. Est-il un bon/mauvais ou bon/mauvais temps de fusion développer dans votre fonction?

InformationsquelleAutor jowie | 2014-08-11