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.