Chromium Chronicle #22: Thy (Depot) Tools (Poznaj narzędzia Depot)

Odcinek 22: Edward Lesmes w San Francisco, Kalifornia (czerwiec 2021 r.)
Poprzednie odcinki

Depot Tools to zbiór narzędzi opartych na Git, które ułatwiają pracę programistów pracujących nad bazą kodu Chromium i powiązanymi projektami. Zawiera ona narzędzia umożliwiające pobieranie kodu, przesyłanie zmian do sprawdzenia, utrzymywanie aktualności procesu płatności i wykonywanie innych czynności.

Pobierz kod

Uruchom plik fetch chromium w pustym katalogu. Polecenie fetch może też służyć do pobierania kodu do innych repozytoriów, takich jak v8 lub webrtc. Pełną listę znajdziesz tutaj: fetch help.

Przesyłanie zmiany do sprawdzenia

Każda lista zmian odpowiada jednej gałęzi w git, więc zacznij od uruchomienia git new-branch <branch_name>, aby utworzyć nową gałąź. Zastosuj w tej gałęzi dowolną liczbę zmian i uruchom git cl upload, gdy będzie gotowa do sprawdzenia.

git cl issue poinformuje Cię, z jaką listą zmian jest powiązana gałąź. Użyj git cl issue <issue>, aby je zmienić.

Dbaj o aktualność procesu płatności

Uruchamiaj okresowo git rebase-update, aby synchronizować gałęzie lokalne z gałęziami nadrzędnymi, oraz gclient sync, aby aktualizować repozytoria third_party i uruchamiać punkty zaczepienia kompilacji.

Zarządzanie wieloma listami zmian

  • git cl status wyświetli listy zmian powiązane z oddziałami lokalnymi i ich stan (niewysłany, lgtm, zamknięty itp.).
  • Metody git freeze i git thaw działają jak git stash, ale pamiętaj o gałęziach powiązanych z przechowywanymi zmianami.
  • git map pokaże historię wszystkich gałęzi, a git map-branches – relacje między nimi nadrzędne.
  • git new-branch --upstream_current <branch_name> tworzy nową gałąź nad istniejącą gałęzią. Użyj polecenia git rebase-update, aby zmienić bazę zależnej gałęzi po wprowadzeniu zmian w gałęzi podstawowej.

Kontynuuj pracę nad istniejącą listą zmian na innym komputerze

Uruchom git cl patch <issue_url>, aby wybrać istniejącą listę kontroli dostępu do bieżącej gałęzi. Pamiętaj, że spowoduje to powiązanie bieżącej gałęzi z poprawioną listą zmian. Użyj git cl patch <issue_url> --reapply, aby odrzucić zmiany lokalne i ponownie zastosować problem.

I nie tylko

Zapoznaj się z samouczkiem narzędzi Depot Tools i zapoznaj się z wiadomościami pomocy dotyczącymi każdego polecenia, aby poznać wszystkie świetne funkcje. Daj nam znać, jeśli masz problemy.