Pregunta

¿Cuál es la diferencia entre SCM y SVN? ¿Y cómo se diferencia Git de Mercurial?

¿Fue útil?

Solución

SCM generalmente significa Gestión de configuración de software, que incluyen CMRM (gestión de cambios hasta la gestión de lanzamientos), incluido el verso.

SVN es solo un VCS: herramienta de control de versiones.

Por lo tanto, uno es mucho más completo y cubre más completamente el ciclo de vida del desarrollo, mientras que es genérico: Team Fundation Server o RTC - Concierto racional del equipo - son ejemplos de SCM.

Otros consejos

SCM es Software Configuration Management y SVN es una herramienta del sistema de control de versiones, que es un subconjunto de SCM. Los VC también se denominan control de revisión y git, Mercurial también son herramientas VCS (VC distribuidos para ser más específicos).

SVN, GIT, Mercurial, etc. son herramientas para el control de la revisión, uno de los procesos en SCM. SCM también incluye gestión de compilación, seguimiento de defectos, etc.

SCM es un término genérico que realmente no significa mucho de nada. Lo he escuchado como "administración de configuración de software", "gestión de cambios de software" y "administración de código fuente", y probablemente hay otros. Básicamente es el marketing de hablar por lo que puedo decir.

Si lo ve como algo así como la última frase, entonces SVN (abrevación de subversión), GIT y Mercurial son todos tipos particulares de sistemas SCM. Git y Mercurial son aproximadamente equivalentes. Hay ligeras diferencias, pero las preferencias personales son realmente la mayoría de lo que importa. Ambos son los que se llaman sistemas de control de revisión distribuidos, lo que significa que no se debe confiar en ninguna ubicación central. Cada persona que los usa puede trabajar de forma independiente, y sincroniza todo más o menos de forma independiente.

La subversión está centralizada. Su objetivo es resolver los mismos tipos de problemas, pero lo hace obligando a toda actividad a pasar por una ubicación que todos usan. Eso hace que muchas cosas sean más fáciles de administrar, pero a costa de una gran cantidad de flexibilidad. Nuevamente, la preferencia personal dicta lo que preferiría.

He probado tanto GIT como Mercurial (y en el presente uso Mercurial). Por lo que he visto, Git parece ser un poco más rápido y quizás más versátil, pero eso tiene un costo de la curva de aprendizaje. Cuando los probé a ambos al principio, no tenía otros compañeros de trabajo en los que confiar para obtener información y encontré que la curva de aprendizaje de GIT es mucho más pronunciada que la de Mercurial. También encontré que Mercurial es un buen negocio más fácil de usar en Windows (que es mi plataforma de desarrollo principal).

Mercurial tiene soporte para GIT y lo contrario probablemente también sea cierto, por lo que probablemente podría probar cualquiera de los dos y cambiar más tarde si encontró la necesidad.

SVN (subversión) es una herramienta que proporciona funcionalidad de versiones. Los desarrolladores utilizaron esta herramienta para registrar sus códigos. Usando esto, podemos rastrear los cambios realizados en los archivos/códigos durante el proceso de desarrollo de software.

Gestión de configuración de software es una práctica que se utiliza para rastrear y controlar los cambios en el desarrollo de software. Incluye todos los procesos necesarios para construir, empaquetar e implementar software.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top