Encontré un gran proyecto en github con una característica central útil, pero que es difícil en el "pulido" del manejo de errores, el registro, la configuración y la configuración. El proyecto lleva 5 años intacto y solo un par de cientos de líneas de código. Aún así, es lo suficientemente útil como para atraer la atención de un número decente de observadores y un puñado de tenedores.
Se requirió una adición específica para mi uso, pero antes de eso hice una limpieza. Luego me obsesioné un poco con los ingenieros y, en el transcurso de una semana, terminé agregando un sistema de registro, muchos registros, una configuración automatizada, configuración factorizada del código y en archivos de configuración externos (y código para leerlos), además de un par de correcciones de errores tal como las encontré.
Creo que todos mis cambios son razonables / buenos y son lo que necesita para ser utilizado por una audiencia. Pero hay muchos commits, casi tantos como el repositorio originalmente tenía (evitando los números para mantener este general). Además, git blame muestra que he tocado casi todas las líneas de esta (¡pequeña!) Base de código. No busco el control del proyecto, ni siquiera necesariamente ningún crédito por lo que he hecho. Pero dada la opción, me gustaría ver mis cambios fusionados para que todos puedan beneficiarse de ellos, en lugar de esconderse en un tenedor en mi github desconocido.
Nunca antes había enviado una solicitud de extracción, pero sé que deberían ser pequeños y fáciles de revisar. Sin embargo, aquí me fui e hice una gran cantidad de cambios transformadores.
Mis compromisos son muy limpios, ya que tendí a la historia cuidadosamente. Pero serían difíciles de separar en múltiples ramas / solicitudes de extracción porque gran parte se basa necesariamente en sí mismo. Por ejemplo, la externalización de la configuración se basa en una limpieza preparatoria, y la configuración existe en parte para llenar esas configuraciones, el registro está habilitado y configurado por las configuraciones externas creadas en la configuración, etc. Dicho esto, estoy muy dispuesto a hacer lo que pueda para hacer que esta enorme píldora sea más sabrosa, simplemente no sé qué sería eso. Podría dividir un par de compromisos, pero la gran reforma aún es grande.
Entonces, ¿qué se puede hacer si revisan accidentalmente el proyecto de alguien?
¿Debo aprender mi lección para no hacer esto y mantener mis cambios en mi tenedor? ¿Debo hacer una solicitud de extracción y ver qué sucede? ¿Debo gastar un montón de palabras para explicarme en la descripción? ¿Debo presentarlo de cierta manera?
fuente