Est-ce une bonne idée d'exiger de n'engager que du code fonctionnel?
Ce commit n'a pas besoin de laisser le référentiel dans un état de fonctionnement tel que:
- ... nous en sommes aux premières étapes de la conception, le code n'est pas encore stable.
- ... vous êtes le seul développeur du projet. Vous savez pourquoi les choses ne fonctionnent pas. De plus, vous n'arrêtez le travail de personne en commettant un code erroné.
- ... le code ne fonctionne pas actuellement. Nous allons faire un grand changement à cela. Engageons-nous afin d'avoir un point sur lequel revenir si les choses se gâtent.
... la chaîne est longue, pas de problème si du code erroné existe dans la branche locale. C'est à dire
- fichiers locaux
- zone de transit
- commets dans la branche locale
- commet dans la branche de fonctionnalité personnelle distante
- fusionner avec une
develop
branche distante - fusionner avec une
master
branche distante - fusionner avec une
release
branche distante
... commets tôt, commets souvent.
Ainsi, dans la question ci-dessus liée, la majorité des réponses indiquent qu'engager du code non compilable ne pose aucun problème dans les branches locales et les entités. Pourquoi? Quelle est la valeur d'un commit bloqué?
Ajouté: Il y a quelques commentaires très votés, disant que sur une branche locale, on peut faire ce que l'on veut. Cependant, l'aspect technique de la question ne m'intéresse pas. J'aimerais plutôt apprendre les meilleures pratiques - les habitudes que les personnes qui ont travaillé de nombreuses années dans l'industrie ont été les plus productives.
Je suis émerveillé par la quantité de bonnes réponses! Ils me conduisent à la conclusion que je ne suis pas assez habile à utiliser des branches pour organiser mon code.