¿Cómo elegir la bifurcación / bifurcación correcta para usar mirando el gráfico de networking de github?

Necesito usar un código de terceros que esté disponible públicamente en github. Estoy mirando el gráfico de la networking de github de ese código y puedo ver que otras bifurcaciones tienen algunas confirmaciones que no están fusionadas en el repository original.

¿Cómo debería decidir cuál de las twigs / tenedores es la adecuada para mí?

Por favor, aliste sus consideraciones mientras enfrenta un problema como este.

Según lo sugerido por John Feminella, uno siempre debería usar las (versiones estables) 'liberadas de un proyecto'.

Estoy de acuerdo con eso, por supuesto, pero esta pregunta aún es relevante en uno de los siguientes casos:

  • El autor original ya no mantiene ese código.
  • Hay una característica que necesito que no está implementada en el original pero implementada de manera diferente en más de una bifurcación
  • El código aún está en etapas de desarrollo, cada fork tiene algunas diferencias con respecto al original (ya sea en características, o decisiones de desarrollo e implementación)

Me he enfrentado a este tipo de casos muchas veces, actualmente el autor original todavía intenta mantener el repository pero parece que no tiene suficiente time, otros tenedores son más activos. Ninguna de las horquillas se anuncia como suficientemente estable para el uso de producción. La última vez que me enfrenté a un caso así, el repository original tampoco implementó una característica que era importante para mí.

Entonces, en tales casos, tendría que elegir la horquilla más estable, intentar usarla dentro de mi código, probarla a background y posiblemente contribuir con algunas mejoras para que sea estable.

Actualización: El OP aclaró su pregunta original para indicar que el proyecto en cuestión está muerto.

Dado que un proyecto está muerto y que tiene N horquillas, la estrategia habitual para elegir el "mejor tenedor" depende de varios factores:

  • ¿Alguien ha anunciado que se harán cargo del mantenimiento del proyecto? Busque noticias en las lists de correo, foros públicos, etc. (no solo en GitHub). Si es así, comienza a seguir ese tenedor.

  • ¿Hay símbolos en el gráfico de networking que tienen confirmaciones provenientes de otro tenedor (en lugar de, digamos, master )? Si es así, eso indica que el soporte se está fusionando alnetworkingedor de este otro tenedor como un posible reemploop para el proyecto muerto.

  • Si alguno de estos no funciona, investigue un poco más: ¿hay variantes del proyecto que se separaron hace algún time y alnetworkingedor del cual se está organizando el soporte? Si es así, tal vez ese otro proyecto se adapte a tus necesidades.

Al fallar todo eso, a veces los proyectos simplemente no tienen el soporte para seguir. Si es así, tal vez es hora de rascarse su propio picor.


Respuesta original:

Algunos comentarios sobre esto:

  • En general, debe usar las versiones publicadas de un proyecto, en lugar de elegir una bifurcación o bifurcación particular. Si no lo hace, sus dependencies cambiarán cada vez que el proyecto se actualice con una nueva confirmación, lo que podría generar errores difíciles de encontrar en su propio código.

  • Si decides que siempre quieres la última versión y estás de acuerdo con los riesgos de eso, entonces utiliza la twig master del proyecto, porque esa es la oficial. Esa será la twig pnetworkingeterminada que está mirando cuando visite la página principal del repository.

  • La gente suele depositar repositorys para realizar y solicitar comentarios sobre algún tipo de modificación en la base de código original.

  • Por lo tanto, a less que esté queueborando en esa modificación, o a less que tenga un interés particular en get acceso anticipado a esa modificación específica, no necesita preocuparse por las otras bifurcaciones.

En raras ocasiones, la twig de desarrollo principal oficial de un proyecto se llamará algo distinto de master . En ese caso, debe consultar el file README para ver qué twig debe observar.

Para completar la respuesta de John

Estoy usando http://gitpop.heroku.com que es útil para encontrar las tenedores más populares y activas. Es bastante rudimentario, pero hace el trabajo.

Editar: Como en marzo de 2014, GitPop está roto, así que escribí el mío porque me resultó útil. http://gitpop2.herokuapp.com

    Intereting Posts