De Chromium Chronicle #22: Ken uw (depot)gereedschappen

Aflevering 22: door Edward Lesmes in San Francisco, CA (juni 2021)
Vorige afleveringen

Depot Tools is een verzameling tools die bovenop Git zijn gebouwd om de workflow van ontwikkelaars die bijdragen aan de Chromium-codebase en gerelateerde projecten te vereenvoudigen. Het bevat tools om de code te verkrijgen, wijzigingen ter beoordeling te uploaden, uw betalingsgegevens up-to-date te houden en meer!

Verkrijg de code

Voer fetch chromium uit in een lege map. Het fetch commando kan ook worden gebruikt om de code voor andere repository's zoals v8 of webrtc op te halen. Zie fetch help voor een volledige lijst.

Upload een wijziging ter beoordeling

Elke CL correspondeert met een enkele branch in git, dus begin met het uitvoeren git new-branch <branch_name> om een ​​nieuwe branch aan te maken. Voer zoveel wijzigingen door als je wilt in deze branch en voer git cl upload wanneer deze klaar is voor beoordeling.

git cl issue laat je weten met welke CL jouw branch geassocieerd is. Gebruik git cl issue <issue> om het te veranderen.

Houd uw kassa up-to-date

Voer periodiek git rebase-update om lokale branches met hun upstream te synchroniseren, en gclient sync om repo's third_party bij te werken en pre-compile hooks uit te voeren.

Beheer meerdere CL's

  • git cl status zal CL's tonen die geassocieerd zijn met lokale branches en hun status (niet verzonden, lgtm, gesloten, enz.).
  • git freeze en git thaw werken als git stash , maar houden de branch bij die geassocieerd is met de opgeslagen wijzigingen.
  • git map zal je de geschiedenis van al je branches laten zien, en git map-branches zal je de upstream relaties tussen al je branches laten zien.
  • git new-branch --upstream_current <branch_name> creëert een nieuwe branch bovenop een bestaande branch. Gebruik git rebase-update om een ​​afhankelijke branch te rebasen nadat je wijzigingen in de basisbranch hebt aangebracht.

Blijf werken aan een bestaande CL op een andere machine

Voer git cl patch <issue_url> uit om een ​​bestaande CL bovenop de huidige branch te selecteren. Merk op dat het de huidige vertakking zal associëren met de gepatchte CL. Gebruik git cl patch <issue_url> --reapply om lokale wijzigingen te negeren en het probleem opnieuw toe te passen.

En meer

Bekijk de tutorial voor depottools en bekijk de helpberichten voor elke opdracht om alle coole functies te ontdekken, en laat het ons weten via als je problemen ondervindt!