Google gestiona uno de los mayores repositorios de código del mundo dentro de un único sistema monolítico compartido por más de 25.000 desarrolladores en decenas de oficinas repartidas por el planeta. El artículo, firmado por Rachel Potvin y Josh Levenberg y publicado en Communications of the ACM, describe la arquitectura, las herramientas y los flujos de trabajo que hacen viable mantener esa base de código común desde hace más de dieciséis años.
El repositorio central contiene alrededor de mil millones de archivos, 86 TB de datos y unos 2.000 millones de líneas de código repartidos en nueve millones de archivos fuente únicos, con un historial de aproximadamente 35 millones de commits que abarca los dieciocho años de vida de la empresa. Cada día laborable se registran 16.000 cambios realizados por personas y 24.000 adicionales provenientes de sistemas automatizados; en hora punta atiende cerca de 800.000 consultas por segundo.
Tras años de experimentación, Google no encontró ningún sistema de control de versiones comercial ni de código abierto capaz de soportar ese volumen en un único repositorio, así que desarrolló Piper, un sistema propietario implementado sobre Bigtable y, más tarde, sobre Spanner, distribuido en diez centros de datos con consistencia garantizada mediante Paxos. La mayoría de los desarrolladores accede a través de Clients in the Cloud (CitC), un sistema basado en FUSE que presenta los espacios de trabajo como directorios en el sistema de archivos sin necesidad de clonar el repositorio localmente.
El texto detalla también la estrategia de desarrollo trunk-based, el proceso de code review, las listas de control de acceso a nivel de archivo, el registro de lecturas y escrituras, y las herramientas de análisis estático y limpieza de código que mantienen la salud del repositorio. Los autores defienden que la evidencia de Google demuestra que el modelo de repositorio único puede escalarse con éxito a un sistema de ultra gran escala.
