Nenhuma descrição

Ng Zhi An cdaf0be1f4 Add git completion helper to cl upload 5 anos atrás
bootstrap bffd63b243 [cipd] Take cipd.ps1 out of %PATH%. 5 anos atrás
fetch_configs 89863242a4 Add fetch configs for devtools-frontend 5 anos atrás
git-templates a7d7d7ec35 Explicitly exec hooks inside a shell. 12 anos atrás
infra 24f3a385a3 Roll recipe dependencies (trivial). 5 anos atrás
man 4f30cf0179 [man] Followup: Fix order of depot_tools in PATH in html docs 5 anos atrás
python-bin 9577daf667 depot_tools: Don't add a python3 shim to depot_tools on bootstrap. 5 anos atrás
recipes 24f3a385a3 Roll recipe dependencies (trivial). 5 anos atrás
testing_support 925cedba7b Run spellchecker on depot_tools 5 anos atrás
tests 14a83aec56 Reland "Use OS level locking in git_cache.py" 5 anos atrás
third_party ac5c55f6d7 Revert "Improve git cl split" 5 anos atrás
win_toolchain 0e7788d16b Skip sources downloaded by WinDbg when checking toolchain status. 5 anos atrás
zsh-goodies 6e043f755b Remove unmaintained "gclient export" command, 14 anos atrás
.cipd_impl.ps1 bffd63b243 [cipd] Take cipd.ps1 out of %PATH%. 5 anos atrás
.gitattributes 1f3bafbab4 git-cl: Run using vpython 5 anos atrás
.gitignore 9577daf667 depot_tools: Don't add a python3 shim to depot_tools on bootstrap. 5 anos atrás
.style.yapf fa40bfa39b Update "git cl format --python" to default to PEP-8 5 anos atrás
.vpython a81450253f depot_tools: Use mock from vpython (or unittest.mock) instead of third_party/mock 5 anos atrás
.vpython3 4ba192e7a9 Reland "gerrit_util: Refactor ReadHttpResponse and add more tests." 5 anos atrás
CROS_OWNERS a110bf60c0 CROS_OWNERS: update 6 anos atrás
GOMA_OWNERS e9ed65aa19 Add tikuta, <user>@chromium.org to GOMA_OWNERS 5 anos atrás
LICENSE fb2b8eb2e2 Create the Next Generation of depot_tools. Eh. 16 anos atrás
LUCI_OWNERS e521cd14da Make vadimsh@ an owner of cipd*. 5 anos atrás
OWNERS 3c1e7e7730 Add brucedawson@ to own post_build_ninja_summary.py 5 anos atrás
PRESUBMIT.py 6a7e234b58 Fix Windows unit tests for roll-dep and use py3 5 anos atrás
README.gclient.md 186449d3e7 docs: Removing references to SVN 9 anos atrás
README.git-cl.md 17016be940 README.git-cl.md: Remove reference to Rietveld 6 anos atrás
README.md 603989e2c0 add clarification for Python 3 5 anos atrás
WATCHLISTS f90afd3eb5 WATCHLISTS: CC chops-source-team@ on all depot_tools changes. 5 anos atrás
auth.py b43d98bf64 auth: Fix has_luci_context_local_auth. 5 anos atrás
autoninja 1248b8ef4a Fix a python invocation that wasn't replaced with vpython. 5 anos atrás
autoninja.bat 59a3b2fd5d Run autoninja scripts using vpython. 5 anos atrás
autoninja.py 925cedba7b Run spellchecker on depot_tools 5 anos atrás
bb 059f26bcb4 do not hardcode the path to bash by using the #!/usr/bin/env bash shebang 6 anos atrás
bb.bat 865445eb8a [bb] Deploy bb 6 anos atrás
bootstrap_python3 11f4a84bb1 Add quotes around paths in bash scripts. 5 anos atrás
breakpad.py dc58a97f02 Finally get rid of depot_tools' breakpad. 9 anos atrás
cbuildbot 76c2e50d3b simplify the chromite wrappers 5 anos atrás
chrome_set_ver 76c2e50d3b simplify the chromite wrappers 5 anos atrás
cipd 059f26bcb4 do not hardcode the path to bash by using the #!/usr/bin/env bash shebang 6 anos atrás
cipd.bat bffd63b243 [cipd] Take cipd.ps1 out of %PATH%. 5 anos atrás
cipd_bin_setup.bat a0aed87f71 Revert "put goma client in depot_tools" 5 anos atrás
cipd_bin_setup.sh a0aed87f71 Revert "put goma client in depot_tools" 5 anos atrás
cipd_client_version a33af2239e [cipd] Update client v2.3.4 => v2.3.5. 5 anos atrás
cipd_client_version.digests a33af2239e [cipd] Update client v2.3.4 => v2.3.5. 5 anos atrás
cipd_manifest.txt 0c7d654c74 [bb] Update bb tool to contain latest protos. 5 anos atrás
cipd_manifest.versions 0c7d654c74 [bb] Update bb tool to contain latest protos. 5 anos atrás
cit f994d87e56 Revert "Reland "depot_tools: Move six to depot_tools' .vpython"" 6 anos atrás
cit.bat f994d87e56 Revert "Reland "depot_tools: Move six to depot_tools' .vpython"" 6 anos atrás
cit.py f994d87e56 Revert "Reland "depot_tools: Move six to depot_tools' .vpython"" 6 anos atrás
clang-format 3ac1c4e320 Depot tools: use the clang-format binaries that are now included 11 anos atrás
clang-format.bat 74809c1b31 [.bat] Remove "depot_tools" override. (#2) 8 anos atrás
clang_format.py 80ee78e7fa Convert print statements to Python 3 style 6 anos atrás
clang_format_merge_driver ff84560ede Introduce git merge driver for the blink reformatting 9 anos atrás
clang_format_merge_driver.bat 74809c1b31 [.bat] Remove "depot_tools" override. (#2) 8 anos atrás
clang_format_merge_driver.py 7c93846385 Convert except statements to be Python 3 compatible 6 anos atrás
codereview.settings 9b654aa084 Make depot_tools upload reviews to Gerrit by default 8 anos atrás
compile_single_file 4dd9682b11 Add a script to make it easier to build a single source file with ninja 8 anos atrás
compile_single_file.bat 4dd9682b11 Add a script to make it easier to build a single source file with ninja 8 anos atrás
compile_single_file.py a74bd78e9c Make it clear that compile_single_file.py doesn't support Jumbo builds 6 anos atrás
cpplint.bat 74809c1b31 [.bat] Remove "depot_tools" override. (#2) 8 anos atrás
cpplint.py 3e87ceaf33 Allow a space after __except 5 anos atrás
cpplint_chromium.py 8b8d8bef35 Add lint check against "Foo *bar" and "Foo &bar" declarations. 14 anos atrás
cros b847c567e7 Reland "cros: switch CrOS programs to python3" 5 anos atrás
cros_sdk 76c2e50d3b simplify the chromite wrappers 5 anos atrás
crosjobs b4fc338b7e Add crosjobs shim script 6 anos atrás
detect_host_arch.py 9777ab3619 depot_tools: Add tests for detect_host_arch. 5 anos atrás
download_from_google_storage 7149d23621 Revert "depot_tools: Run Python scripts using vpython (Part 2)" 6 anos atrás
download_from_google_storage.bat 7149d23621 Revert "depot_tools: Run Python scripts using vpython (Part 2)" 6 anos atrás
download_from_google_storage.py 64dab2dbab Print the SHA of files downloaded from GS 5 anos atrás
ensure_bootstrap 24995256ee Reland "depot_tools: Bootstrap Python 3 on Linux/Mac" 6 anos atrás
fetch c621315d17 Make Python 3 default on Windows 5 anos atrás
fetch.bat 002f97b35a Abort fetch, gclient, gsutil.py when update_depot_tools fails on Windows 5 anos atrás
fetch.py e2686734ac Make fetch compatible with py 3.5 5 anos atrás
fix_encoding.py 925cedba7b Run spellchecker on depot_tools 5 anos atrás
gclient c621315d17 Make Python 3 default on Windows 5 anos atrás
gclient-new-workdir.py 7149d23621 Revert "depot_tools: Run Python scripts using vpython (Part 2)" 6 anos atrás
gclient.bat 002f97b35a Abort fetch, gclient, gsutil.py when update_depot_tools fails on Windows 5 anos atrás
gclient.py 14a83aec56 Reland "Use OS level locking in git_cache.py" 5 anos atrás
gclient_completion.sh 2dca41cf70 Added basic completion (the commands) for gclient. 11 anos atrás
gclient_eval.py 925cedba7b Run spellchecker on depot_tools 5 anos atrás
gclient_paths.py 84b5f9a215 depot_tools: Add tests for gclient_paths 5 anos atrás
gclient_scm.py 14a83aec56 Reland "Use OS level locking in git_cache.py" 5 anos atrás
gclient_utils.py 925cedba7b Run spellchecker on depot_tools 5 anos atrás
gerrit_client.py c99efb2f8c Add gerrit_client unit tests 5 anos atrás
gerrit_util.py 888c0fe768 ReadHttpResponse: Handle 429s with retries and adjust retry count 5 anos atrás
git-cache 648b4cd2ca Add quotes around paths in bash scripts 5 anos atrás
git-cl 11f4a84bb1 Add quotes around paths in bash scripts. 5 anos atrás
git-crrev-parse 383ace4b35 Fix git-crrev-parse on Mac. 8 anos atrás
git-drover 648b4cd2ca Add quotes around paths in bash scripts 5 anos atrás
git-find-releases 648b4cd2ca Add quotes around paths in bash scripts 5 anos atrás
git-footers 648b4cd2ca Add quotes around paths in bash scripts 5 anos atrás
git-freeze 648b4cd2ca Add quotes around paths in bash scripts 5 anos atrás
git-gs 2b4ac39884 Add *.proto to git-gs 8 anos atrás
git-hyper-blame 648b4cd2ca Add quotes around paths in bash scripts 5 anos atrás
git-map 648b4cd2ca Add quotes around paths in bash scripts 5 anos atrás
git-map-branches 648b4cd2ca Add quotes around paths in bash scripts 5 anos atrás
git-mark-merge-base 648b4cd2ca Add quotes around paths in bash scripts 5 anos atrás
git-nav-downstream 648b4cd2ca Add quotes around paths in bash scripts 5 anos atrás
git-nav-upstream e989bb2b45 Make git-nav-upstream use the upstream branch name 6 anos atrás
git-new-branch 648b4cd2ca Add quotes around paths in bash scripts 5 anos atrás
git-number 648b4cd2ca Add quotes around paths in bash scripts 5 anos atrás
git-rebase-update 648b4cd2ca Add quotes around paths in bash scripts 5 anos atrás
git-rename-branch 648b4cd2ca Add quotes around paths in bash scripts 5 anos atrás
git-reparent-branch 648b4cd2ca Add quotes around paths in bash scripts 5 anos atrás
git-retry 648b4cd2ca Add quotes around paths in bash scripts 5 anos atrás
git-runhooks 98eda3f3e4 Revert "depot_tools: Run Python scripts using vpython (Part 1)" 6 anos atrás
git-squash-branch 648b4cd2ca Add quotes around paths in bash scripts 5 anos atrás
git-thaw 648b4cd2ca Add quotes around paths in bash scripts 5 anos atrás
git-upstream-diff 648b4cd2ca Add quotes around paths in bash scripts 5 anos atrás
git_cache.py 14a83aec56 Reland "Use OS level locking in git_cache.py" 5 anos atrás
git_cl.py cdaf0be1f4 Add git completion helper to cl upload 5 anos atrás
git_cl_completion.sh cdaf0be1f4 Add git completion helper to cl upload 5 anos atrás
git_common.py 42033b2c6a Fix gclient-new-workdir when source repo is shallow clone 5 anos atrás
git_dates.py 819375653b Added git hyper-blame, a tool that skips unwanted commits in git blame. 9 anos atrás
git_drover.py b806e17eb2 git-drover: Don't attempt to decode output of check_call. 5 anos atrás
git_find_releases.py 1850bf6d17 Add unit tests for git_find_releases 5 anos atrás
git_footers.py 925cedba7b Run spellchecker on depot_tools 5 anos atrás
git_freezer.py 98eda3f3e4 Revert "depot_tools: Run Python scripts using vpython (Part 1)" 6 anos atrás
git_hyper_blame.py d682fa4e32 Add support for git_hyper_blame for Windows 5 anos atrás
git_map.py b800fde565 git-map: Refactor and add simple tests 5 anos atrás
git_map_branches.py 1ee78cdaac git cl: use short URLs in `git cl status`. 5 anos atrás
git_mark_merge_base.py 98eda3f3e4 Revert "depot_tools: Run Python scripts using vpython (Part 1)" 6 anos atrás
git_nav_downstream.py ae3586b538 depot_tools: Use gclient_utils.AskForData instead of raw_input. 5 anos atrás
git_new_branch.py 8410164ab1 git-cl: Fix invocation of git new-branch 5 anos atrás
git_number.py 925cedba7b Run spellchecker on depot_tools 5 anos atrás
git_rebase_update.py fef5cf8e22 Revert "Fix printing error on git-rebase failure" 5 anos atrás
git_rename_branch.py 9bb7b96c4d git-rebase-update: Make tests run on Python 3. 5 anos atrás
git_reparent_branch.py 98eda3f3e4 Revert "depot_tools: Run Python scripts using vpython (Part 1)" 6 anos atrás
git_retry.py 98eda3f3e4 Revert "depot_tools: Run Python scripts using vpython (Part 1)" 6 anos atrás
git_squash_branch.py 98eda3f3e4 Revert "depot_tools: Run Python scripts using vpython (Part 1)" 6 anos atrás
git_upstream_diff.py 98eda3f3e4 Revert "depot_tools: Run Python scripts using vpython (Part 1)" 6 anos atrás
gn a738935a12 Add executable and line ending properties for GN. 11 anos atrás
gn.bat 74809c1b31 [.bat] Remove "depot_tools" override. (#2) 8 anos atrás
gn.py 80ee78e7fa Convert print statements to Python 3 style 6 anos atrás
goma_auth 27bd4e420d Reland "put goma client in depot_tools" 5 anos atrás
goma_auth.bat 64c1faf0fb Fix goma_auth.bat to use nul instead of null. 5 anos atrás
goma_ctl 8b34eb4d1e [goma_ctl] Use vpython to call goma_ctl.py. 5 anos atrás
goma_ctl.bat 845b830530 Fixed goma_ctl.bat to pipe to nul instead of creating a file called null. 5 anos atrás
gsutil.py 83aafc979f depot_tools: Make gsutil compatible with python3. 5 anos atrás
gsutil.py.bat 002f97b35a Abort fetch, gclient, gsutil.py when update_depot_tools fails on Windows 5 anos atrás
gsutil.vpython 8b52ca7aa7 gsutil.vpython: Set vpython_version: 2.7 5 anos atrás
led 059f26bcb4 do not hardcode the path to bash by using the #!/usr/bin/env bash shebang 6 anos atrás
led.bat 5aeeb72c33 [bootstraps] Sync at gclient, suppress output (#2) 8 anos atrás
lockfile.py 14a83aec56 Reland "Use OS level locking in git_cache.py" 5 anos atrás
luci-auth 059f26bcb4 do not hardcode the path to bash by using the #!/usr/bin/env bash shebang 6 anos atrás
luci-auth.bat f3b152d2f5 [luci-auth] Add statically-linked luci-auth CLI tool. 7 anos atrás
lucicfg 059f26bcb4 do not hardcode the path to bash by using the #!/usr/bin/env bash shebang 6 anos atrás
lucicfg.bat ef40cbac46 [cipd] Add lucicfg tool. 6 anos atrás
mac_toolchain 059f26bcb4 do not hardcode the path to bash by using the #!/usr/bin/env bash shebang 6 anos atrás
metrics.README.md 2247035813 metrics: Update documentation 5 anos atrás
metrics.py e1a9c8db7e Reland "metrics: Use vpython3 instead of sys.executable" 5 anos atrás
metrics_utils.py 73065b2067 depot_tools: Make some changes to make metrics collection compatible with Python 3. 6 anos atrás
my_activity.py 2be61a1df4 Document the parameter {heading} avilable to --output-format-heading. 5 anos atrás
ninja 7c62ed63ac properly detect msys_nt as windows in the ninja script 5 anos atrás
ninja-linux32 aa57b34620 Update ninja to v1.8.2 8 anos atrás
ninja-linux64 aa57b34620 Update ninja to v1.8.2 8 anos atrás
ninja-mac aa57b34620 Update ninja to v1.8.2 8 anos atrás
ninja.exe aa57b34620 Update ninja to v1.8.2 8 anos atrás
ninjalog.README.md 540ba9dde0 [ninjalog] add ninjalog.README.md 6 anos atrás
ninjalog_uploader.py 59a3b2fd5d Run autoninja scripts using vpython. 5 anos atrás
ninjalog_uploader_wrapper.py 59a3b2fd5d Run autoninja scripts using vpython. 5 anos atrás
owners.py 7a0b07a8a5 Fix slash direction sensitivity in git cl owners 5 anos atrás
owners_finder.py 9b4a0570e5 Print clarifying message when no new owners needed 5 anos atrás
post_build_ninja_summary.py e3a42b258e More detailed build-step type summary for android 5 anos atrás
presubmit_canned_checks.py beb877fe49 depot_tools: bugfix for py3 syntax and bytes/str changes 5 anos atrás
presubmit_support.py 7a0b07a8a5 Fix slash direction sensitivity in git cl owners 5 anos atrás
profile.xml fb2b8eb2e2 Create the Next Generation of depot_tools. Eh. 16 anos atrás
prpc 059f26bcb4 do not hardcode the path to bash by using the #!/usr/bin/env bash shebang 6 anos atrás
prpc.bat d6d0ecca50 [prpc] Add pRPC CLI tool to depot_tools. 7 anos atrás
pylint 53297790de pylint: rework wrapper to use vpython for multiple versions 6 anos atrás
pylint-1.5 198b562986 pylint: make pylint-quotes available 5 anos atrás
pylint-1.6 198b562986 pylint: make pylint-quotes available 5 anos atrás
pylint-1.7 198b562986 pylint: make pylint-quotes available 5 anos atrás
pylint-1.8 198b562986 pylint: make pylint-quotes available 5 anos atrás
pylint-1.9 198b562986 pylint: make pylint-quotes available 5 anos atrás
pylint.bat 53297790de pylint: rework wrapper to use vpython for multiple versions 6 anos atrás
pylint_main.py 53297790de pylint: rework wrapper to use vpython for multiple versions 6 anos atrás
pylintrc 198b562986 pylint: make pylint-quotes available 5 anos atrás
python_runner.sh c621315d17 Make Python 3 default on Windows 5 anos atrás
rdb 0f47d332f1 [resultdb] Add rdb and rdb.bat 5 anos atrás
rdb.bat 0f47d332f1 [resultdb] Add rdb and rdb.bat 5 anos atrás
repo 4ecdd22b0b repo: update to 2.5 launcher 5 anos atrás
roll-dep c621315d17 Make Python 3 default on Windows 5 anos atrás
roll-dep.bat c621315d17 Make Python 3 default on Windows 5 anos atrás
roll_dep.py 994bed5496 Fix Python3 integer division issue in roll-dep. 5 anos atrás
scm.py 925cedba7b Run spellchecker on depot_tools 5 anos atrás
setup_color.py 73ec83f0fe setup_color: Don't output an error if GetConsoleMode fails 6 anos atrás
split_cl.py 17ffd9875c git-cl: Fix git-cl split. 5 anos atrás
subcommand.py 925cedba7b Run spellchecker on depot_tools 5 anos atrás
subprocess2.py 7ad1d093be subprocess2: Fix CalledProcessError str() method on Python 3. 5 anos atrás
update_depot_tools 648b4cd2ca Add quotes around paths in bash scripts 5 anos atrás
update_depot_tools.bat 942c97d626 update_depot_tools: Pull changes first before updating tools on Win. 5 anos atrás
update_depot_tools_toggle.py 74d7e13315 [auto_update] Add control script, allow disable. 8 anos atrás
upload_metrics.py f994d87e56 Revert "Reland "depot_tools: Move six to depot_tools' .vpython"" 6 anos atrás
upload_to_google_storage.py 94d6f48ba1 gsutil: Decode output from subprocess. 5 anos atrás
vpython 0ab6a9f6e4 depot_tools: Use system's python for vpython. 5 anos atrás
vpython.bat dfadd9d7a2 Reland "vpython: Specify interpreter to run." 5 anos atrás
vpython3 df70c81527 depot_tools: Simplify MinGW check. 5 anos atrás
vpython3.bat 7e0b333328 Fix git-* commands when using python3 on Win 5 anos atrás
watchlists.py 589d4563ba depot_tools: Run watchlists tests on Python 3 5 anos atrás
weekly 80ee78e7fa Convert print statements to Python 3 style 6 anos atrás
win32imports.py 14a83aec56 Reland "Use OS level locking in git_cache.py" 5 anos atrás
wtf 80ee78e7fa Convert print statements to Python 3 style 6 anos atrás
yapf 177e70c03e update yapf to 0.27.0 5 anos atrás
yapf.bat e47ac15d93 Fix git cl format --python on windows 6 anos atrás

README.gclient.md

gclient

gclient is a tool for managing a modular checkout of source code from multiple source code repositories. It wraps underlying source code management commands to provide support for distributing tree updates, status commands, and diffs across multiple checked-out working directories.

The gclient script is controlled by a .gclient file at the top of a directory tree which will contain source code from multiple locations. A .gclient file is a Python script that defines a list of solutions with the following format:

solutions = [
  { "name"        : "src",
    "url"         : "https://chromium.googlesource.com/chromium/src.git",
    "custom_deps" : {
      # To use the trunk of a component instead of what's in DEPS:
      #"component": "https://github.com/luci/luci-go",
      # To exclude a component from your working copy:
      #"data/really_large_component": None,
    }
  },
]

A solution is a collection of component pieces of software that will be checked out in a specific directory layout for building together.

Each entry in the solutions list is defined by a Python dictionary that contains the following items:

  • name: The name of the directory in which the solution will be checked out.
  • url: The URL from which this solution will be checked out. gclient expects that the checked-out solution will contain a file named DEPS that in turn defines the specific pieces that must be checked out to create the working directory layout for building and developing the solution's software.
  • deps_file: A string containing just the filename (not a path) of the file in the solution dir to use as the list of dependencies. This tag is optional, and defaults to DEPS.
  • custom_deps: A dictionary containing optional custom overrides for entries in the solution's DEPS file. This can be used to have the local working directory not check out and update specific components, or to sync the local working-directory copy of a given component to a different specific revision, or a branch, or the head of a tree. It can also be used to append new entries that do not exist in the DEPS file.

Within each checked-out solution, gclient expects to find a file typically named DEPS (it actually uses the value of the deps_file key above) which defines the different component pieces of software that must be checked out for the solution. The DEPS file is a Python script that defines a dictionary named deps:

deps = {
  "src/outside": "https://outside-server/one/repo.git@12345677890123456778901234567789012345677890",
  "src/component": "https://dont-use-github.com/its/unreliable.git@0000000000000000000000000000000000000000",
  "src/relative": "/another/repo.git@aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
}

Each item in the deps dictionary consists of a key-value pair. The key is the directory into which the component will be checked out, relative to the directory containing the .gclient file. The value is the URL from which that directory will be checked out. If there is no address scheme (that is, no http: prefix), then the value must begin with a slash and is treated relative to the root of the solution's repository.

The URL typically contains a specific revision or change number (as appropriate for the underlying SCM system) to freeze the external software at a specific, known state. Alternatively, if there is no revision or change number, the URL will track the latest changes on the specific trunk or branch.