2011-03-14 27 views
18

¿Existen patrones de rendimiento?git vs mercurial rendimiento

Estoy mirando para crear un acuerdo de recompra y comprometerse/empuje para código heredado que se ejecuta varios conciertos de profundidad.

¿Es más rápido/huella, etc.?

Me disculpo si esto es demasiado vaga ...

Respuesta

9

La actuación correcta de medir sobre un DVCS (que realiza todas las operaciones a nivel local de todos modos) es el que realiza sus tareas diarias:

  • fusión (la rapidez con que se decide entre el various branching models, especialmente en Mercurial ?)
  • publication workflow (¿Con qué rapidez la configuración de un push/pull worlflow?)
  • integración (la forma en q ¿integra rápidamente Git con IDE, con aplicaciones web como Hudson o Jira o Redmine o Track, o ...?)
  • configuración (qué tan rápido configura un repositorio centralizado, con qué tipo de mecanismo de autenticación: eso importa si se utiliza un DVCS in an enterprise environment)

el rendimiento bruto de las operaciones básicas no es tan relevante, siempre que se entienda el limits of a DVCS: no se puede tener una sola cesión temporal en el que se pondría todo (todos los proyectos, o todos tipo de archivos como binarios).
Se debe llevar a cabo algún tipo de reorganización de módulos para definir la cantidad correcta de repo por "módulos" (conjuntos de archivos coherentes).

13

usted no elige entre git y mercurial causa de rendimiento. Ambos son buenos.

Eso sí, el tipo de cosas que estarías haciendo y medida. Es probable que obtengas la mayor variación de rendimiento en la primera importación, eso no importará mucho. Sigue cavando.

espacio-sabia

, el único lugar git definitivamente ganar es si tiene el mismo contenido en un montón de diferentes caminos en su vida útil. Es decir, si sus varios gigs de archivos se mueven. El modelo de git lo soporta mejor que hg. Eso muy bien puede no importarte.

En ambos casos, se debe considerar si sus varios gigas de repositorio en realidad representa el código fuente de un solo proyecto.

Pero, de nuevo, no sería prudente para elegir entre estos dos proyectos similares y activos a causa de rendimiento bruto.

+1

ver https://code.facebook.com/posts/218678814984400/scaling-mercurial-at-facebook/ – SgtPooki

12

había una comparación reciente (enero de 2011) el rendimiento entre Mercurial and Git server performance. La conclusión es que Mercurial ofrece un rendimiento más estable que Git, pero que Git es más rápido en promedio.

+0

Gracias por el enlace fue muy útil – Eva611

+0

Parece que el enlace ya no funciona. Si alguien tenía un espejo que sería genial. –

+0

@FabioTurati Acabo de probar el enlace y funciona ahora. –

7

Como señaló @MartinGeisler en su respuesta, el tiempo de confirmación es muy pequeño (si confirma a través de la línea de comandos, el intérprete de comandos regresa inmediatamente).

Lo que toma bastante tiempo es la red clone s/push es/pull s.Google publicada small benchmark (see footnote 1) cuando tuvieron que elegir un DVCS para código de Google, pero es bastante antiguo (verano de 2008).

+0

voy a estar empujando ... Una gran cantidad! Lo siento si no estaba claro. Gracias por el aporte – Eva611

2

Eric Sink ha publicado el results de un punto de referencia para SVN, Bazar, Mercurial, Git y su propia Veracidad.

Desafortunadamente, es solo una operación (una confirmación), con una única base de código (Valgrind), y no estoy seguro de qué versión utilizó para todos estos VCS, pero en cualquier caso debe ser bastante antigua a medida que el artículo de nuevo a 2011. Creo que esta es la razón por sí mismo los define Eric "ridículamente no científicos puntos de referencia". De todos modos, por lo que vale:

SVN es mucho más lento que los otros (casi 22 segundos), pero todos los demás son similares (entre 3 y 5 segundos). Git es claramente el más rápido, y en porcentaje incluso es mucho más más rápido que Mercurial (que toma un 43% más de tiempo), pero en realidad estamos hablando de una diferencia de 1,4 segundos, apenas perceptible.

Aparte de esto, no puedo encontrar las fuentes en este momento, pero he leído varias veces que Git es más rápido, aunque la diferencia es trivial (lo que confirma esta prueba hecha por Eric). Así que no se preocupe demasiado acerca de la velocidad al momento de elegir cuál de ellos para ir con.