¿Cómo contribuyo código a Joomla?

19

Soy consciente de que el código se administra en https://github.com/joomla/joomla-cms (al menos para el CMS) y que debo enviar solicitudes de extracción para sugerir que se agregue el código.

Estoy especialmente interesado en cualquier buen consejo sobre cómo administrar mis contribuciones y asegurarme de que el código llegue al lugar correcto.

¿Debo usar diferentes sucursales en mi repositorio bifurcado para administrar diferentes contribuciones? Si es así, ¿cuál es la mejor manera de vincular esa rama con las ramas principales en el repositorio de Joomla?

¿Existe un buen método para mantener actualizada mi copia bifurcada?

¡Cualquier sugerencia sobre un buen flujo para administrar este proceso sería realmente útil!

David Fritsch
fuente

Respuestas:

10

Siempre es bueno tener una rama dedicada para cada solicitud de extracción que va a realizar.

Una de las formas más simples de crear una nueva rama actualizada es usar la interfaz gráfica de usuario de GitHub para editar el archivo en el repositorio original. Al guardar, GitHub creará automáticamente una nueva rama en su bifurcación basada en la rama que edita actualmente. Si desea editar más archivos, puede editarlos en su rama recién creada y actualizada.

Si está un poco familiarizado con Git, entonces cambia su rama de bifurcación bifurcada con la rama original aguas arriba para que esté sincronizada antes de crear nuevas ramas. Además, si tiene que actualizar un RP, se recomienda volver a crearlo en lugar de fusionar el maestro. Si bien ambas formas funcionan, los commits de fusión solo están creando un mal historial y son más difíciles de eliminar.

En términos generales, los RP deberían ser "atómicos". Esto significa que si intentas arreglar algo, solo arregla ese error en particular. No arregles dos errores diferentes en el mismo PR y tampoco hagas arreglos de estilo de código. Es más fácil de probar y también es menos probable que genere conflictos si el RP vive un poco más de lo esperado.

Y, por supuesto, agregue una buena descripción de lo que desea hacer y las instrucciones de prueba para reproducir el problema y probar su solución :-)

Bakual
fuente
4

Una gran cosa que ayuda a agrupar sus contribuciones es mover cada contribución a una rama separada, con un nombre apropiado. Si está agregando una función, use un prefijo como feature-y agregue una descripción de la función de una o dos palabras para el nombre de la sucursal. Si se trata de una corrección de errores en la JFormclase, úsela bugfix-jform. Esto hace que sea realmente fácil identificar en qué está trabajando al revisar sus ramas git a través de git branch -a.

Don gilbert
fuente