Escuché que Google tiene un depósito privado (interno) gigante de todo su código y sus empleados tienen acceso a él para que cuando estén desarrollando cosas no tengan que reinventar la rueda. ¡Me gustaría saber más al respecto!
¿Hay alguien aquí de Google que pueda describirlo con un poco más de detalle, o sabes un poco más al respecto? Estoy interesado en saber principalmente cómo está organizado y cómo pueden facilitar que un empleado encuentre algo en una base de código tan gigante como debe ser.
version-control
google
Ricket
fuente
fuente
Respuestas:
Aquí hay un video que explica cómo está organizado: Desarrollo a la velocidad y escala de Google
fuente
Para la mayoría Google utiliza una configuración de Perforce . Sin embargo, existen herramientas internas para que otras herramientas como git funcionen encima. (No sé cómo logran esto) . Sin embargo , los proyectos grandes de código abierto como Android y Chromium tienen repositorios separados.
Construido sobre Perforce hay muchas aplicaciones internas estelares . Por ejemplo, existen herramientas para hacer que la construcción, las pruebas y las revisiones de códigos sean mágicas.
En parte debido a esta cultura de 'magia' y pruebas, Google realmente no usa la ramificación. Todo el mundo se registra en 'main'. Para cualquier proyecto, puede ver la fuente, construirla y ejecutar las pruebas unitarias sin ningún conocimiento especializado. Esto es enorme Cuando estaba en Microsoft, cada producto requería el sacrificio de un animal diferente para construir y ejecutar sus pruebas.
Además, Google tiene una guía de estilo de toda la empresa para los principales idiomas que utilizamos. Si tiene acceso al código fuente de otro equipo, ¿cuál sería el punto si el formato es inestable?
En cuanto a la búsqueda, es posible que esté familiarizado con Google Code Search . Hay una versión especial de eso, junto con otras herramientas de búsqueda de códigos de alto secreto que hacen que navegar por el código sea mucho más fácil.
En resumen, Google tiene una cultura muy centrada en la ingeniería que comprende el valor de las herramientas y la productividad del desarrollador.
fuente
Es enorme:
Utilizan una herramienta interna llamada Piper, que se basa en la infraestructura de Google.
Fuente: por qué Google almacena miles de millones de líneas de código en un único repositorio
fuente