W większości przypadków Google używa konfiguracji Perforce . Istnieją jednak wewnętrzne narzędzia umożliwiające działanie innych narzędzi, takich jak git. (Nie wiem, jak to osiągają). Duże projekty typu open source, takie jak Android i Chromium, mają jednak osobne repozytoria.
Zbudowany na szczycie Perforce wiele gwiazd aplikacjach wewnętrznych. Na przykład istnieją narzędzia, dzięki którym budowanie, testowanie i przeglądanie kodu jest niczym magicznym.
Częściowo z powodu tej „magii” i kultury testowania, Google tak naprawdę nie używa rozgałęzień. Wszyscy meldują się w „głównym”. Dla każdego projektu możesz zobaczyć źródło, zbudować je i uruchomić testy jednostkowe bez specjalistycznej wiedzy. To jest ogromne. Kiedy pracowałem w Microsoft, każdy produkt wymagał poświęcenia innego zwierzęcia, aby zbudować i uruchomić ich testy nie wchodziło w rachubę.
Ponadto Google ma przewodnik po stylu dla głównych języków, których używamy. jeśli masz dostęp do kodu źródłowego innego zespołu, jaki byłby sens, gdyby całe formatowanie było nieporadne!
Jeśli chodzi o wyszukiwanie, być może znasz Google Code Search . Istnieje specjalna wersja tego, wraz z innymi ściśle tajnymi narzędziami do wyszukiwania kodu, które znacznie ułatwiają nawigację.
Krótko mówiąc, Google ma bardzo skoncentrowaną na inżynierii kulturę, która rozumie wartość narzędzi i produktywność programistów.