Decidir cúando se debe hacer commits es un skill que se aprende con la experiencia.
Un commit debe tener sentido por si mismo, no debe presentar fallos de pruebas al compilar y debe aportar algún valor a la base de código.
Un commit debe recoger cambios que tengan relación. Por ejemplo, corregir dos bugs diferentes se debe reflejar en dos commits diferentes.