commit | 2c984a03caff0f1c0f92d6b5ddbc3226393db5eb | [log] [tgz] |
---|---|---|
author | John Budorick <jbudorick@chromium.org> | Wed Jul 18 23:24:13 2018 |
committer | Commit Bot <commit-bot@chromium.org> | Wed Jul 18 23:24:13 2018 |
tree | abc487fe0e5e8bac4fcd91cefbeed9f3881be9d0 | |
parent | f9afc77f283e5e9f7973ac0619a3cc5c18973a44 [diff] |
Revert "Reland "gclient_scm: Use cherry-picking instead of rebasing."" This reverts commit f9afc77f283e5e9f7973ac0619a3cc5c18973a44. Reason for revert: https://bugs.chromium.org/p/chromium/issues/detail?id=864301#c10 Original change's description: > Reland "gclient_scm: Use cherry-picking instead of rebasing." > > The failures were caused by: > 1 - When one change (call it #2) has been uploaded on top of another (#1), > and (#1) has already landed, git cherry-pick complains that the range > '<merge-base>..<change #2>' contains empty commits, since the contents > of (#1) are already present in the tree. > 2 - We did not abort the cherry-picking when 'git cherry-pick' failed, > so a failure made all further CLs in that bot fail. > > This CL fixes it and prevents further regressions. > > Original change's description: > > gclient_scm: Use cherry-picking instead of rebasing. > > > > Currently gclient might include extra commits when applying patches. > > For example, in this case we checkout |patch| and rebase it on top of |base|, > > thus including an |extra commit| that we shouldn't. > > > > o master > > | > > . o patch > > |/ > > o extra commit > > | > > o base (what gclient synced src at) > > > > This change uses the merge-base between |patch| and |master| to cherry-pick only > > the changes belonging to the patch. > > > > Bug: 850812 > > Change-Id: I138192f96bc62b1bb19b0e1ad952c8f8c67631c4 > > Reviewed-on: https://chromium-review.googlesource.com/1137052 > > Commit-Queue: Edward Lesmes <ehmaldonado@chromium.org> > > Reviewed-by: Aaron Gable <agable@chromium.org> > > Bug: 850812 > Change-Id: I83f38d0a258df3f5cd89e277f0d648badff29a22 > Reviewed-on: https://chromium-review.googlesource.com/1139554 > Reviewed-by: Aaron Gable <agable@chromium.org> > Commit-Queue: Edward Lesmes <ehmaldonado@chromium.org> TBR=agable@chromium.org,ehmaldonado@chromium.org,jbudorick@chromium.org Change-Id: I2138757899abd6eb9bece2dac3a25676effafdf3 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: 850812 Reviewed-on: https://chromium-review.googlesource.com/1142624 Reviewed-by: John Budorick <jbudorick@chromium.org> Commit-Queue: John Budorick <jbudorick@chromium.org>
Tools for working with Chromium development. It requires python 2.7.
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.
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
.
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.
To update cpplint.py, please submit the change upstream first at https://github.com/google/styleguide/tree/gh-pages/cpplint then copy it down.