Ouvi dizer que o Google tem um repositório privado (interno) gigante de todo o código e seus funcionários têm acesso a ele, de modo que, quando estão desenvolvendo coisas, não precisam reinventar a roda. Eu gostaria de saber mais sobre isso!
Existe alguém aqui no Google que possa descrevê-lo um pouco mais detalhadamente, ou você sabe um pouco mais sobre isso? Estou interessado em saber principalmente sobre como é organizado e como eles podem facilitar para que um funcionário encontre algo em uma base de código tão gigante quanto deve ser.
version-control
google
Ricket
fonte
fonte
Respostas:
Aqui está um vídeo explicando como está organizado: Desenvolvimento na velocidade e escala do Google
fonte
Para a maioria, o Google usa uma configuração do Perforce . No entanto, existem ferramentas internas para fazer com que outras ferramentas, como o git, trabalhem em cima dela. (Como eles conseguem isso, eu não sei.) Projetos grandes de código aberto, como Android e Chromium, têm repositórios separados.
Construído sobre o Perforce, há muitos aplicativos internos estelares . Por exemplo, existem ferramentas para tornar as revisões de construção, teste e código nada menos que mágicas.
Em parte por causa dessa cultura 'mágica' e de teste, o Google realmente não usa ramificação. Todo mundo entra em 'main'. Para qualquer projeto, você pode ver a fonte, construí-la e executar os testes de unidade sem nenhum conhecimento especializado. Isso é imenso. Quando eu estava na Microsoft, cada produto exigia o sacrifício de um animal diferente para criar e executar os testes.
Além disso, o Google tem um guia de estilo para toda a empresa para os principais idiomas que usamos. se você tiver acesso ao código-fonte de outra equipe, qual seria o objetivo se a formatação fosse instável!
Quanto à pesquisa, você pode estar familiarizado com a Pesquisa de código do Google . Existe uma versão especial disso, juntamente com outras ferramentas de pesquisa de código ultrassecretas que facilitam a navegação no código.
Em suma, o Google tem uma cultura muito centrada em engenharia que entende o valor das ferramentas e a produtividade do desenvolvedor.
fonte
É enorme:
Eles usam uma ferramenta interna chamada Piper, que depende da infraestrutura do Google.
Fonte: Por que o Google armazena bilhões de linhas de código em um único repositório
fonte