¿Cómo debería estructurar mis commits de git?

Intento contribuir con el software de código abierto por primera vez, pero carezco de experiencia con los sistemas de control de versiones. En particular, en este momento quiero hacer una serie de cambios en diferentes partes del código, pero no estoy seguro de si el mantenedor querría integrarlos en el repository principal. Sin embargo, los cambios que haré serán independientes, es decir, afectarán diferentes partes del file o partes de files diferentes.

¿Cómo debo hacer los cambios? Si realizo una serie de confirmaciones en la misma twig, ¿podrá el mantenedor seleccionar y elegir lo que quiere de la confirmación individual? Por ejemplo, ¿puede parchear los cambios que realicé en mi segundo compromiso sin tener en count el primero? ¿O debería hacer cada cambio en una twig separada?

Editar: Tal vez debería mencionar que estoy viendo github en particular.

Realice las modificaciones en function de las características y comprométalas de esa manera: cada function completa tiene una confirmación por separado. Incluso si toca varios files.

Luego puede enviar parches para estas características completas, que facilitarán la fusión si, por ejemplo. el mantenedor del proyecto solo aceptará algunas de las cosas que implementó.

Depende del proyecto, pero es habitual que los nuevos contribuyentes preparen parches y se los envíen a los mantenedores oa los revisores especialmente designados. Si sus cambios no están relacionados, probablemente deberían ser parches separados.