Una de las diferencias entre svn y git es la capacidad de controlar el acceso al repositorio. ¡Es difícil comparar los dos porque hay una diferencia de perspectiva sobre quién debería poder realizar cambios!
Esta pregunta trata sobre el uso de git como un repositorio centralizado para un equipo en una empresa en algún lugar. Suponga que los miembros del equipo tienen diferentes niveles de habilidad, como lo son en la mayoría de las empresas.
Git parece suponer que solo sus mejores programadores (los más productivos y experimentados) son de confianza para verificar el código. Si ese es el caso, se está tomando el tiempo de escribir el código para revisar el código de otras personas con el fin de registrarlo. ¿Vale la pena? Realmente quiero enfocar esta pregunta en cuál es el mejor uso del tiempo de su mejor programador, no en las mejores prácticas de control de versiones en general . Un corolario podría ser: ¿renuncian los buenos programadores si una parte importante de su trabajo es revisar el código de otras personas? Creo que ambas preguntas se reducen a: ¿vale la pena el examen de la productividad?
git
cualquier desarrollador puede tener su propio repositorio (en su computadora personal) y un repositorio personal público (el que está en un servidor, detrás apache
) al que solo puede agregar cambios. La diferencia es que solo el repositorio principal de desarrolladores es el "bendecido", del que todos deberían pagar. El código de pago principal de los repositorios públicos del desarrollador y los combina con su repositorio público. Ambos tienen iteración conocida / controlada, así como control de origen en todo momento.