Tools for working with Chromium development. It requires python 2.7.
The most important tools are:
gclient wrapper to checkout a project. Use
fetch --help for more details.
gclient: A meta-checkout tool. Think repo or git submodules, except that it support OS-specific rules, e.g. do not checkout Windows only dependencies when checking out for Android. Use
gclient help for more details and README.gclient.md.
git cl: A code review tool to interact with Rietveld or Gerrit. Use
git cl help for more details and README.git-cl.md.
roll-dep: A gclient dependency management tool to submit a dep roll, updating a dependency to a newer revision.
There are a lot of git utilities included.
depot_tools updates itself automatically when running
gclient tool. To disable auto update, set the environment variable
To update package manually, run
update_depot_tools.bat on Windows, or
./update_depot_tools on Linux or Mac.
On Windows only, running
gclient will install
To contribute change for review:
git new-branch <somename> # Hack git add . git commit -a -m "Fixes goat teleporting" # find reviewers git cl owners git log -- <yourfiles> # Request a review. git cl upload -r email@example.com,firstname.lastname@example.org --send-mail # Edit change description if needed. git cl desc # If change is approved, flag it to be committed. git cl set-commit # If change needs more work. git rebase-update ... git cl upload -t "Fixes goat teleporter destination to be Australia"
Until 2018, our
cpplint.py was a copy of the upstream version at https://github.com/google/styleguide/tree/gh-pages/cpplint. Unfortunately, that repository is not maintained any more. If you want to update
depot_tools, just upload a patch to do so. We will figure out a long-term strategy via issue https://crbug.com/916550.
Note that the
cpplint.py here is also used by the Tricium analyzer, so if the cpplint.py here changes, we should also update the copy used there.