You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
Go to file
Robert Iannucci 0081c0ff17 [git-cache] Add option to update_bootstrap to skip the populate step.
This will allow us to separate the 'populate' and 'upload' phases
in the git cache updater recipe, which will allow us to do all the
'populate' steps in parallel, but then limit the parallelism of the
`pack/gc/upload` operations.

R=tandrii@chromium.org

Change-Id: I8b8a9155f86350be37ed5a67c592ff1fec4d42ff
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/tools/depot_tools/+/1830857
Auto-Submit: Robbie Iannucci <iannucci@chromium.org>
Commit-Queue: Andrii Shyshkalov <tandrii@google.com>
Reviewed-by: Andrii Shyshkalov <tandrii@google.com>
6 years ago
bootstrap
fetch_configs
git-templates
infra
man
recipes
support
testing_support gclient: Fix gclient Python 3 errors and add to presubmit tests. 6 years ago
tests
third_party
win_toolchain
zsh-goodies
.gitattributes
.gitignore
.style.yapf
.vpython3
CROS_OWNERS
LICENSE
OWNERS
PRESUBMIT.py
README.gclient.md
README.git-cl.md
README.md
annotated_gclient.py
auth.py
autoninja
autoninja.bat
autoninja.py
bb
bb.bat
bootstrap_python3
breakpad.py
buildbucket.py
cbuildbot
chrome_set_ver
cipd
cipd.bat
cipd.ps1
cipd_bin_setup.bat
cipd_bin_setup.sh
cipd_client_version
cipd_client_version.digests
cipd_manifest.txt
cipd_manifest.versions
cit
cit.bat
cit.py
clang-format
clang-format.bat
clang_format.py
clang_format_merge_driver
clang_format_merge_driver.bat
clang_format_merge_driver.py
codereview.settings
compile_single_file
compile_single_file.bat
compile_single_file.py
cpplint.bat
cpplint.py
cpplint_chromium.py
cros
cros_sdk
crosjobs
dart_format.py
depot-tools-auth
depot-tools-auth.bat
depot-tools-auth.py
detect_host_arch.py
download_from_google_storage
download_from_google_storage.bat
download_from_google_storage.py
ensure_bootstrap
fetch Revert "Reland "depot_tools: Use vpython to execute fetch."" 6 years ago
fetch.bat Revert "Reland "depot_tools: Use vpython to execute fetch."" 6 years ago
fetch.py Revert "Reland "depot_tools: Use vpython to execute fetch."" 6 years ago
fix_encoding.py
gclient Reland "gclient: Add a GCLIENT_PY3 env var to allow users to execute gclient using Python 3." 6 years ago
gclient-new-workdir.py
gclient.bat Reland "gclient: Add a GCLIENT_PY3 env var to allow users to execute gclient using Python 3." 6 years ago
gclient.py
gclient_completion.sh
gclient_eval.py
gclient_paths.py
gclient_scm.py
gclient_utils.py
gerrit_client.py
gerrit_util.py
git-cache
git-cl
git-crrev-parse
git-drover
git-find-releases
git-footers
git-freeze
git-gs
git-hyper-blame
git-map
git-map-branches
git-mark-merge-base
git-nav-downstream
git-nav-upstream
git-new-branch
git-number
git-rebase-update
git-rename-branch
git-reparent-branch
git-retry
git-runhooks
git-squash-branch
git-thaw
git-upstream-diff
git_cache.py [git-cache] Add option to update_bootstrap to skip the populate step. 6 years ago
git_cl.py
git_cl_completion.sh
git_common.py
git_dates.py
git_drover.py
git_find_releases.py
git_footers.py
git_freezer.py
git_hyper_blame.py
git_map.py
git_map_branches.py
git_mark_merge_base.py
git_nav_downstream.py
git_new_branch.py
git_number.py
git_rebase_update.py
git_rename_branch.py
git_reparent_branch.py
git_retry.py
git_squash_branch.py
git_upstream_diff.py
gn
gn.bat
gn.py
gsutil.py
gsutil.py.bat
gsutil.vpython Add the crcmod wheel for gsutil, to get it to shut up. 7 years ago
led
led.bat
luci-auth
luci-auth.bat
lucicfg
lucicfg.bat
mac_toolchain
metrics.README.md
metrics.py
metrics_utils.py
my_activity.py
ninja
ninja-linux32
ninja-linux64
ninja-mac
ninja.exe
ninjalog.README.md
ninjalog_uploader.py
ninjalog_uploader_wrapper.py
owners.py
owners_finder.py
post_build_ninja_summary.py
presubmit_canned_checks.py
presubmit_support.py
profile.xml
prpc
prpc.bat
pylint
pylint-1.5
pylint-1.6
pylint-1.7
pylint-1.8
pylint-1.9
pylint.bat
pylint_main.py
pylintrc
python_runner.sh
repo
roll-dep
roll-dep-svn
roll-dep-svn.bat
roll-dep.bat
roll_dep.py
roll_dep_svn.py
scm.py
setup_color.py
split_cl.py
subcommand.py
subprocess2.py
update_depot_tools
update_depot_tools.bat
update_depot_tools_toggle.py
upload_metrics.py
upload_to_google_storage.py
vpython
vpython.bat
vpython3
vpython3.bat
watchlists.py
weekly
wtf
yapf
yapf.bat

README.md

depot_tools

Tools for working with Chromium development. It requires python 2.7.

Tools

The most important tools are:

  • fetch: A 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.

Updating

depot_tools updates itself automatically when running gclient tool. To disable auto update, set the environment variable DEPOT_TOOLS_UPDATE=0.

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 git and python.

Contributing

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 reviewer1@chromium.org,reviewer2@chromium.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"

See also open bugs, open reviews, forum or report problems.

cpplint.py

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 cpplint.py in 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.