Comment puis-je contribuer du code à Joomla?

19

Je suis conscient que le code est géré sur https://github.com/joomla/joomla-cms (pour le CMS au moins) et que je dois soumettre des demandes d'extraction pour suggérer que le code soit ajouté.

Je suis particulièrement intéressé par de bons conseils pour gérer mes contributions et m'assurer que le code arrive au bon endroit.

Dois-je utiliser différentes branches dans mon repo forké pour gérer différentes contributions? Si c'est le cas, quelle est la meilleure façon de relier cette branche aux branches principales du référentiel Joomla?

Existe-t-il une bonne méthode pour maintenir à jour ma copie fourchue?

Toute suggestion sur un bon flux pour gérer ce processus serait vraiment utile!

David Fritsch
la source

Réponses:

10

Il est toujours bon d'avoir une branche dédiée pour chaque demande de pull que vous allez faire.

L'une des façons les plus simples de créer une nouvelle branche à jour consiste simplement à utiliser l'interface graphique Web GitHub pour modifier le fichier dans le référentiel d'origine. Lors de l'enregistrement, GitHub créera automatiquement une nouvelle branche dans votre fork en fonction de la branche que vous éditez actuellement. Si vous souhaitez modifier plus de fichiers, vous pouvez les modifier dans votre branche nouvellement créée et mise à jour.

Si vous êtes un peu familier avec Git, vous rebasez votre branche intermédiaire de fourche avec la branche d'origine en amont afin qu'elle soit synchronisée avant de créer de nouvelles branches. De plus, si vous devez mettre à jour un PR, il est recommandé de le rebaser au lieu de fusionner le maître. Bien que les deux méthodes fonctionnent, les fusions-validations ne font que créer une mauvaise histoire et sont plus difficiles à écraser.

D'une manière générale, les PR doivent être "atomiques". Cela signifie que si vous essayez de corriger quelque chose, ne corrigez que ce bogue particulier. Ne corrigez pas deux bogues différents dans le même PR et ne faites pas non plus de correctifs de codestyle. Il est plus facile à tester et moins susceptible de créer des conflits si le PR vit un peu plus longtemps que prévu.

Et bien sûr, ajoutez une bonne description de ce que vous voulez faire et des instructions de test pour reproduire le problème et tester votre correctif :-)

Bakual
la source
4

Une grande chose qui aide à regrouper vos contributions est de déplacer chaque contribution dans une branche distincte et correctement nommée. Si vous ajoutez une fonction, utilisez un préfixe comme feature-et ajoutez une description de fonction d'un ou deux mots pour le nom de la branche. S'il s'agit d'un correctif de bogue dans la JFormclasse, utilisez bugfix-jform. Cela facilite vraiment l'identification de ce sur quoi vous travaillez en vérifiant vos branches git via git branch -a.

Don Gilbert
la source