Chromium Chronicle #22: outils de connaissance (depot)

Épisode 22:Edward Lesmes à San Francisco, Californie (juin 2021)
Épisodes précédents

Depot Tools est un ensemble d'outils basés sur Git pour simplifier le workflow des développeurs qui contribuent au codebase Chromium et aux projets associés. Il contient des outils permettant d'obtenir le code, d'importer les modifications pour examen, de maintenir votre règlement à jour et plus encore.

Obtenir le code

Exécutez fetch chromium dans un répertoire vide. La commande fetch peut également être utilisée pour obtenir le code d'autres dépôts, tels que v8 ou webrtc. Consultez fetch help pour obtenir la liste complète.

Importer une modification pour examen

Chaque CL correspond à une seule branche dans git. Vous devez donc commencer par exécuter git new-branch <branch_name> pour créer une branche. Validez autant de modifications que vous le souhaitez dans cette branche et exécutez git cl upload lorsque celle-ci est prête à être examinée.

git cl issue vous indique la CL à laquelle votre branche est associée. Utilisez git cl issue <issue> pour le modifier.

Veillez à ce que votre règlement soit à jour

Exécutez régulièrement git rebase-update pour synchroniser les branches locales en amont, et gclient sync pour mettre à jour les dépôts third_party et exécuter des hooks de précompilation.

Gérer plusieurs CL

  • git cl status affiche les CL associées aux branches locales et leur état (non envoyé, lgtm, fermé, etc.).
  • git freeze et git thaw fonctionnent comme git stash, mais gardez une trace de la branche associée aux modifications placées dans la cache.
  • git map affiche l'historique de toutes vos branches, tandis que git map-branches vous montre les relations en amont entre toutes vos branches.
  • git new-branch --upstream_current <branch_name> crée une branche au-dessus d'une branche existante. Utilisez git rebase-update pour rebaser une branche dépendante après avoir modifié la branche de base.

Continuer à travailler sur une CL existante sur une autre machine

Exécutez git cl patch <issue_url> pour sélectionner une CL existante au-dessus de la branche actuelle. Notez que la branche actuelle sera associée à la CL corrigée. Utilisez git cl patch <issue_url> --reapply pour supprimer les modifications locales et appliquer à nouveau le problème.

Et plus encore

Consultez le tutoriel sur les outils de dépôt et parcourez les messages d'aide de chaque commande pour découvrir toutes les fonctionnalités intéressantes, et n'hésitez pas à nous contacter si vous rencontrez des problèmes.