Accidentalmente revisé todo el proyecto de alguien. ¿Alguna forma aceptable de extraer la solicitud?


12

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?

Respuestas:


30

Si el proyecto estuvo "5 años intacto" como escribió, es probable que no se acepten solicitudes de extracción, independientemente de si alguien arregló un error tipográfico en un comentario o realizó una reescritura completa. El proyecto fue probablemente abandonado por los autores originales.

Lo primero que intentaría es contactar a los autores y preguntarles qué piensan al respecto. Si no responden en un período de tiempo razonable, ¿por qué no simplemente hacer pública su bifurcación (suponiendo que la licencia lo permita), agregar un resumen sobre lo que mejoró y ver qué sucede?

Si otros piensan que sus mejoras son útiles para ellos, es posible que prefieran usar su bifurcación como un proyecto inicial a favor del original. Si el autor original va a revivir el proyecto original nuevamente, ambos pueden decidir si el proyecto original y su bifurcación deben fusionarse entre sí y quién será el futuro mantenedor.

Si los autores originales no muestran signos de realizar un mantenimiento activo, puede considerar desconectar completamente su fork del proyecto original. En este caso, configure su propio repositorio independiente para esto. No olvide dar crédito a los autores originales y asegurarse de que esté cubierto por la licencia del proyecto.


2
Gracias por aterrizarme. Trataré de contactar al autor y conocer su actitud sobre el proyecto.
user1169420
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.