He bifurcado un proyecto y he cambiado mucho. Esta bifurcación no es solo un pequeño cambio de características aquí y una corrección de errores enterrada allí, es un cambio bastante sustancial. Solo se comparte la mayor parte del código central.
Bifurqué este proyecto en v2.5.0. Por un tiempo comencé a versionar mi fork en v3.0. Sin embargo, no estoy seguro de si esta es la forma correcta, principalmente porque cuando ese proyecto llega a v3.0, las cosas se vuelven confusas. Pero no quiero comenzar de nuevo en v1.0 o v0.1 porque eso implica la infancia, la inestabilidad y la falta de refinamiento de un proyecto. Esto no es cierto, ya que la mayoría del código central es muy refinado y estable.
Estoy realmente perdido en qué hacer, así que pregunto aquí: ¿Cuál es la forma estándar de lidiar con este tipo de situación? ¿La mayoría de las bifurcaciones comienzan de nuevo, aumentan los números de versión o hacen otra cosa que no conozco?
fuente
Respuestas:
La mayoría de las horquillas que he visto comienzan de nuevo desde la versión 1.0. Pero supongo que también ha cambiado el nombre de su bifurcación, por lo que no estoy seguro de por qué habría confusión si simplemente comenzara desde la v3.0.
Lo que haría es cambiar el nombre del proyecto, lanzar la versión 1.0 y dejar en claro que el proyecto es una bifurcación de otro proyecto. No creo que haya ninguna confusión con ese enfoque.
Si está realmente preocupado por la etiqueta "1.0", simplemente lance la versión 2.0 poco tiempo después de 1.0 ...
fuente
Tenga su propia hoja de ruta y cúmplala, comenzando con el número de la versión original, pero no intente competir con la versión actual del producto original.
fuente
Es posible que desee considerar si (y cuánto) su proyecto estará relacionado con el original. Si planea portar nuevas características del proyecto original a su, puede considerar mantener sus números de versión que coincidan con las versiones del original.
Como ejemplo, vea MariaDB, que es una bifurcación de MySQL. Quieren mantenerlo como un reemplazo directo para MySQL, por lo que, por ejemplo, MariaDB 5.2 tiene todas las características de MySQL 5.2.
Ver: http://kb.askmonty.org/v/mariadb-versus-mysql
Nota: desde que se publicó esta respuesta, MariaDB se ha distanciado sustancialmente de MySQL y ahora sigue su propio esquema de versiones.
fuente
0.1 puede indicar la infancia, pero la versión 1.0+ significa estable. Un aumento en los números de versiones principales, por ejemplo, 2.0, 3.0, generalmente indica un gran cambio de características.
P.ej
Lo que digo es que los números de versión principales no indican madurez, sino que indican conjuntos de características principales. Ahora que fue un poco tangente de cómo numerar su producto.
Lo que he visto antes, lo que me gustó silenciosamente fue comenzar a versionar nuevamente desde 1.0 (o desde 3.0 si realmente lo prefiere) y luego entre paréntesis decir de qué versión del original tenía las características extraídas.
fuente
Si es posible, combine su bifurcación con el proyecto original. No puedo enfatizar esto lo suficiente.
Recupera tus números de versión, luego usa el que bifurcas más un sufijo de fecha.
fuente