Chromium Chronicle #22: Conheça as ferramentas do Depot

Episódio 22:de Edward Lesmes em São Francisco, Califórnia (junho de 2021)
Episódios anteriores

O Depot Tools é um conjunto de ferramentas criado com base no Git para simplificar o fluxo de trabalho dos desenvolvedores que contribuem para a base de código do Chromium e os projetos relacionados. Ele tem ferramentas para receber o código, fazer o upload de mudanças para revisão, manter sua finalização de compra atualizada e muito mais.

Acessar o código

Execute fetch chromium em um diretório vazio. O comando fetch também pode ser usado para receber o código para outros repositórios, como v8 ou webrtc. Consulte fetch help para ver uma lista completa.

Fazer upload de uma mudança para revisão

Cada CL corresponde a uma única ramificação no git. Portanto, comece executando git new-branch <branch_name> para criar uma nova ramificação. Confirme quantas alterações quiser nessa ramificação e execute git cl upload quando estiver pronto para revisão.

git cl issue vai informar a qual CL sua ramificação está associada. Use git cl issue <issue> para mudá-lo.

Manter sua finalização de compra atualizada

Execute git rebase-update periodicamente para sincronizar ramificações locais com o upstream, e gclient sync para atualizar os repositórios third_party e executar hooks de pré-compilação.

Gerenciar vários CLs

  • git cl status mostra os CLs associados às ramificações locais e os status delas (não enviado, lgtm, fechado etc.).
  • git freeze e git thaw funcionam como git stash, mas monitoram a ramificação associada às alterações armazenadas.
  • git map mostra o histórico de todas as ramificações, e git map-branches mostra as relações upstream entre todas elas.
  • git new-branch --upstream_current <branch_name> cria um novo branch sobre um branch existente. Use git rebase-update para realocar uma ramificação dependente depois de fazer alterações na ramificação de base.

Continue trabalhando em um CL existente em outra máquina

Execute git cl patch <issue_url> para selecionar um CL existente sobre a ramificação atual. Observe que ele vai associar a ramificação atual ao CL com patch. Use git cl patch <issue_url> --reapply para descartar mudanças locais e aplicar o problema novamente.

E mais

Confira o tutorial de ferramentas de depósito, leia as mensagens de ajuda de cada comando para descobrir todos os recursos interessantes e entre em contato se tiver algum problema.