Commit Graph

306 Commits (04713553740b63a36745b2cb62c890d32a692e71)

Author SHA1 Message Date
wychen@chromium.org 16ca29c916 Enable help generation for some git-cl subcommands
The subcommends "description" and "diff" in git-cl could not print the
help message even if --help was provided.

BUG= 473406

Review URL: https://codereview.chromium.org/1053103002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@294663 0039d316-1c4b-4281-b951-d872f2087c98
10 years ago
calamity@chromium.org ffde55c519 Make git-map-branches -vvv show CL status colors.
This CL makes git-map-branches show CL status colors like git cl status
when -vvv is used. Statuses are fetched in parallel for speed.

BUG=379849

Review URL: https://codereview.chromium.org/938583002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@294414 0039d316-1c4b-4281-b951-d872f2087c98
10 years ago
dnj@chromium.org 406c44042b git_cl: Add reverse issue lookup.
Add the ability to lookup the branch(es) corresponding to a specific
issue. This helps keep track of issues when switching between multiple
branches.

BUG=None
TEST=None

Review URL: https://codereview.chromium.org/969263002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@294307 0039d316-1c4b-4281-b951-d872f2087c98
10 years ago
rmistry@google.com c68112d9cb Stop defaulting unrecognized branches to master except for handful of special refs.
Context:
In https://codereview.chromium.org/781523002/ I added the ability for target_ref to be set to any branch name. Eg: For Skia a ref of 'refs/remotes/origin/chrome/m42' would be correctly set to 'refs/heads/chrome/m42'.

But in https://codereview.chromium.org/822503005/ this was changed to treat any branch that did not start with 'refs/remotes/branch-heads' or 'refs/remotes/origin/refs' to be 'refs/remotes/origin/master'.
This makes it very chromium specific, there are plenty of other projects that use depot_tools that does not work like this.
For Skia 'refs/remotes/origin/chrome/m42' would now change to 'refs/remotes/origin/master' which is wrong.

The default behavior should be to preserve the original ref not to override it to master.

I handled 'lkgr' and 'lkcr' as special cases in this CL because many developers track it and would like it to land in master by default.

BUG=chromium:463109
NOPRESUBMIT=true

Review URL: https://codereview.chromium.org/967453004

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@294303 0039d316-1c4b-4281-b951-d872f2087c98
10 years ago
sbc@chromium.org 013731e832 Handle KeyboardInterrupt consistently in python scripts
Handle KeyboardInterrupt gracefully rather the printing a
backtrace. Most users of these tools don't expect a
backtrace when then hit Ctrl-C.

Also, fix a few other inconsistencies found in the python
startup code of these different scripts:
- always call main function 'main' (rather than 'Main')
- always return 0 from main function
- if main takes args never include argv[0]

Review URL: https://codereview.chromium.org/955993006

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@294250 0039d316-1c4b-4281-b951-d872f2087c98
10 years ago
rmistry@google.com 5626a92eec Add ability to specify and run post upload hooks.
Motivation: There are a few things we want to do in Skia infrastructure that is not possible to do without this functionality.
Eg1: If there is a change made to Skia's markdown then automatically include a 'DOCS_PREVIEW_URL=https://skia.org?cl=1234' in the CL's description.
Eg2: Automatically add 'NOTRY=true' for changes impacting things that do not need trybot runs.
Eg3: Include CL specific links to skia's perf (https://perf.skia.org/) and correctness (https://gold.skia.org/) servers.

BUG=chromium:462208

Review URL: https://codereview.chromium.org/949273002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@294242 0039d316-1c4b-4281-b951-d872f2087c98
10 years ago
erg@chromium.org e0a7c5d4af Run dartfmt when invoking git cl format.
If the repository has third_party/dart-sdk/ unpacked, use that to
format dart files modified in the current patch.

BUG=459376
R=maruel@chromium.org, zra@google.com

Review URL: https://codereview.chromium.org/933383002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@294179 0039d316-1c4b-4281-b951-d872f2087c98
10 years ago
bauerb@chromium.org 27386ddd72 Add a --squash option to Gerrit uploads.
This makes uploading to Gerrit with `git cl` more similar to uploading to Rietveld, by uploading a squashed commit containing the diff to the newest common ancestor.

Uploaded commits are stored in refs/heads/git_cl_uploads/<branch> (and their commit message is used for the squash commit), which allows amending the commit message to change it on the uploaded CL, and looking through the reflog to find old uploaded versions.

BUG=none

Review URL: https://codereview.chromium.org/200023004

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@294077 0039d316-1c4b-4281-b951-d872f2087c98
10 years ago
wychen@chromium.org 06928534d9 Allow branch name to be the same as directory name for "git cl diff"
Remove the ambiguity between revision and filename (or directory name)
when using command "git cl diff".

BUG=454032

Review URL: https://codereview.chromium.org/889093002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@293914 0039d316-1c4b-4281-b951-d872f2087c98
10 years ago
wittman@chromium.org 455dc92f58 Support --target-branch option to git-cl upload for Rietveld
This is similar to the Gerrit behavior in that we default to master,
unless the remote upstream is a branch head.

BUG=435702

Review URL: https://codereview.chromium.org/822503005

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@293807 0039d316-1c4b-4281-b951-d872f2087c98
10 years ago
phajdan.jr@chromium.org 529141341f Remove testfilter support from "git cl"
BUG=432498

Review URL: https://codereview.chromium.org/860353003

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@293743 0039d316-1c4b-4281-b951-d872f2087c98
10 years ago
sbc@chromium.org 797060631a Add checks to GitSanityChecks (upstream branch or current branch can be None)
I've run in the exceptions a few times when doing
'git cl presubmit' or 'git cl lint' from a detached
HEAD state (not uncommon when using 'git rebase-update')

Review URL: https://codereview.chromium.org/792933003

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@293643 0039d316-1c4b-4281-b951-d872f2087c98
10 years ago
luqui@chromium.org 64e1436432 Added error check to git cl that we are on a branch when we try to upload.
BUG=443264

R=iannucci@chromium.org,maruel@chromium.org

Review URL: https://codereview.chromium.org/811023003/



git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@293537 0039d316-1c4b-4281-b951-d872f2087c98
10 years ago
rmistry@google.com 2138f50f8f Add pending prefix to the target_ref if it is specified
BUG=435702

Review URL: https://codereview.chromium.org/797793003

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@293356 0039d316-1c4b-4281-b951-d872f2087c98
10 years ago
rmistry@google.com d1e3758a84 depot_tools: Send the remote tracked ref to Rietveld via upload.py.
This change goes hand in hand with the corresponding Rietveld change here:
https://codereview.chromium.org/773083004/
The motivation for both CLs came from the discussion in the internal CL: https://chromereviews.googleplex.com/115567013/

AFAIK either change can be submitted first without breaking anything in the other framework.

Observe the "Tracked Ref" field in the below CLs-

Tracking a remote ref:
* https://skia-codereview-staging.appspot.com/8861001 (Tracking skiabot-test's refs/heads/master)
* https://skia-codereview-staging.appspot.com/851002 (Tracking skiabot-test's refs/diff/test1)
* https://skia-codereview-staging.appspot.com/2891001 (Tracking Chromium's refs/heads/master)
* https://skia-codereview-staging.appspot.com/1931003 (Tracking Chromium's refs/branch-heads/1916)

Tracking a local branch which in turn tracks a remote ref:
* https://skia-codereview-staging.appspot.com/3891002 (Transitively tracking skiabot-test's refs/heads/master)
* https://skia-codereview-staging.appspot.com/4921001 (Transitively tracking Chromium's refs/branch-heads/1916)

CL when no target_ref is specified in depot_tools/third_party/upload.py:
* https://skia-codereview-staging.appspot.com/3871003 (CL with missing target_ref should default to /refs/heads/master)


Try the above links with and without the 'Deprecated UI' checked in https://skia-codereview-staging.appspot.com/settings


BUG=435702

Review URL: https://codereview.chromium.org/781523002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@293334 0039d316-1c4b-4281-b951-d872f2087c98
10 years ago
thakis@chromium.org 9819b1bf99 Let `git cl format` format java files, too.
This will only have an effect if one's buildtools checkout is new enough, since
only then:

a) clang-format will be new enough to do a decent job for java files
b) clang-format-diff.py will be new enough to look at java files

So for older buildtools checkouts, `git cl format` will continue to ignore java
files.  For newer buildtools checkouts (like the one pulled by `gclient sync`
with a recent chromium checkout), it'll work and do a fairly decent job.

BUG=429372

Review URL: https://codereview.chromium.org/788933003

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@293312 0039d316-1c4b-4281-b951-d872f2087c98
10 years ago
iannucci@chromium.org a1950c4e56 Fix git-cl-dcommit hook tests.
TBR=agable@chromium.org, jrobbins@chromium.org, maruel@chromium.org
BUG=

Review URL: https://codereview.chromium.org/726673008

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@293275 0039d316-1c4b-4281-b951-d872f2087c98
10 years ago
kjellander@chromium.org 6abc652428 Rewrite Google Code http URLs with https on git svn dcommit.
This fix is created to avoid having to rebuild all the WebRTC
Git mirrors since they're configured to sync with the http URL
instead of https (resulting in git-svn-id Git footers with the
http URL in the commit messages). Without rewriting this, it is
not possible to commit to SVN since Google code disallows committing
to a http URL.

BUG=412012
TEST=Created a CL using a Git repo like this (both before and after landing https://webrtc-codereview.appspot.com/32569004):
git clone https://chromium.googlesource.com/external/webrtc.git
cd webrtc
git auto-svn
git checkout master
git checkout -b test
(edit whitespace change)
git commit -am "Whitespace edit
git cl upload --bypass-hooks"
git cl dcommit

R=agable@chromium.org, machenbach@chromium.org, mmoss@chromium.org

Review URL: https://codereview.chromium.org/760903004

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@293171 0039d316-1c4b-4281-b951-d872f2087c98
10 years ago
carlosk@chromium.org 71284d9bcb Improved git cl patch generated commit message to include patchset information
and a link to it.

BUG=

Review URL: https://codereview.chromium.org/731473002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@292940 0039d316-1c4b-4281-b951-d872f2087c98
10 years ago
maruel@chromium.org 5cab2d37e3 Fix git cl comments when there's no issue associated with the current branch.
It currently crashes, which is sad.

R=pgervais@chromium.org
BUG=

Review URL: https://codereview.chromium.org/683283006

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@292899 0039d316-1c4b-4281-b951-d872f2087c98
10 years ago
apavlov@chromium.org e4efd51bf9 Extend the git-cl-comments command functionality
The "comments" command is taught to:
- accept an arbitrary review issue id;
- post comments on the current or specified review issue.

This is required for the auto-rebaseline bot to notify a
rebaseline requestor of the fact that the rebaseline has happened
by means of posting a comment to the review issue that requested
the rebaseline, as suggested by iannucci@.

R=iannucci, szager, dpranke

Review URL: https://codereview.chromium.org/693873002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@292844 0039d316-1c4b-4281-b951-d872f2087c98
10 years ago
thakis@chromium.org 3421c992cc Be a bit more space-efficient.
BUG=none

Review URL: https://codereview.chromium.org/695113002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@292792 0039d316-1c4b-4281-b951-d872f2087c98
10 years ago
szager@chromium.org d62c61fedd Make 'git cl patch' work when not on a named branch.
R=maruel@chromium.org,pgervais@chromium.org
BUG=

Review URL: https://codereview.chromium.org/661413005

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@292537 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
jam@chromium.org 80c51aefb8 Revert 292493 since it broke CQ
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@292513 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
sbc@chromium.org 82549e0c42 Fix reitveld base URL for googlesource.com repos.
The base url was previously being generated as
URL@BRANCH.  I'm not sure if this works anywhere
but it certainly doesn't on googlesource.com.
Here we want URL/+/BRANCH.

R=iannucci@chromium.org, sergeyberezin@chromium.org

Review URL: https://codereview.chromium.org/652193004

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@292493 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
mark@chromium.org 782570c484 Report the entire hash in the "committed" message.
This concerns the "committed" message posted to Rietveld. Prior to
34504a15bb, this used the committer's own core.abbrev. Now it's using
a hard-coded 7. Per recent discussions on chromium-dev, 7 is
insufficient to uniquely identify commits in large repositories such as
ours. If any abbreviation is to be done, a 12-digit minimum should be
used, but there's no reason not to use the entire hash.

Review URL: https://codereview.chromium.org/592293002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@292164 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
jsbell@chromium.org b99fbd9c45 Factor out Changelist GetStatus() for eventual use by other tools
Pulls the logic for computing an issue's "status" - has LGTM, is in
CQ, etc. - out of the "git cl status" command itself, so that other
tools can get the status of a Changelist.

BUG=379849
R=iannucci@chromium.org

Review URL: https://codereview.chromium.org/555973005

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@291928 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
maruel@chromium.org 552c31baf2 Fix ascii art escaping.
This was done because a line ending with a '\' will not be printed properly.
Completely escape the string.

R=stip@chromium.org
BUG=

Review URL: https://codereview.chromium.org/557143002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@291906 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
maruel@chromium.org 29404b59d2 Add git cl lol.
Because everyone needs humour.

Fix a small bug in subcommands.py with undocumented commands.

R=stip@chromium.org
BUG=

Review URL: https://codereview.chromium.org/554123003

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@291867 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
thakis@chromium.org 5f32a966af Grammar up.
BUG=
TBR=iannucci

Review URL: https://codereview.chromium.org/549613002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@291835 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
thakis@chromium.org bd2a9b9720 Make git cl format work on my Windows box.
For me, PATH was a unicode instead of a str for some reason, so things
failed with

D:\src\chromefetch\src>git cl format
Traceback (most recent call last):
  File "d:\src\depot_tools\git_cl.py", line 2821, in <module>
    sys.exit(main(sys.argv[1:]))
  File "d:\src\depot_tools\git_cl.py", line 2807, in main
    return dispatcher.execute(OptionParser(), argv)
  File "d:\src\depot_tools\subcommand.py", line 245, in execute
    return command(parser, args[1:])
  File "d:\src\depot_tools\git_cl.py", line 2768, in CMDformat
    stdout = RunCommand(cmd, stdin=diff_output, cwd=top_dir, env=env)
  File "d:\src\depot_tools\git_cl.py", line 81, in RunCommand
    return subprocess2.check_output(args, shell=False, **kwargs)
  File "d:\src\depot_tools\subprocess2.py", line 515, in check_output
    return check_call_out(args, stdout=PIPE, **kwargs)[0]
  File "d:\src\depot_tools\subprocess2.py", line 475, in check_call_out
    out, returncode = communicate(args, **kwargs)
  File "d:\src\depot_tools\subprocess2.py", line 449, in communicate
    proc = Popen(args, **kwargs)
  File "d:\src\depot_tools\subprocess2.py", line 237, in __init__
    super(Popen, self).__init__(args, **kwargs)
  File "d:\src\depot_tools\python276_bin\lib\subprocess.py", line 709, in __init__
    errread, errwrite)
  File "d:\src\depot_tools\python276_bin\lib\subprocess.py", line 957, in _execute_child
    startupinfo)
TypeError: environment can only contain strings
Sending crash report ...
  args: ['d:\\src\\depot_tools\\git_cl.py', 'format']
  cwd: D:\src\chromefetch\src
  exception: environment can only contain strings
  host: THAKIS1-W.ad.corp.google.com
  stack:   File "d:\src\depot_tools\git_cl.py", line 2821,
  user: thakis
  version: 2.7.6 (default, Nov 10 2013, 19:24:18)

This fixes the glitch.

Review URL: https://codereview.chromium.org/545333002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@291825 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
iannucci@chromium.org bbe9cc5aa8 Return 1 from git_cl land when you Ctrl-C it in the middle.
R=agable@chromium.org, mmoss@chromium.org
BUG=

Review URL: https://codereview.chromium.org/549513002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@291823 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
piman@chromium.org 336f9125c0 Add a --tbr-owners option to git cl upload
BUG=410125

Review URL: https://codereview.chromium.org/543463002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@291794 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
iannucci@chromium.org 34504a15bb Use full hash in Committed link when closing issue via git-cl.
R=agable@chromium.org, vadimsh@chromium.org
BUG=

Review URL: https://codereview.chromium.org/526523002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@291751 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
iannucci@chromium.org 6c217b1fd6 Make git-cl-{dcommit,land} fail if retcode is not zero after push.
R=dnj@chromium.org, vadimsh@chromium.org
BUG=409170

Review URL: https://codereview.chromium.org/523113003

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@291745 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
iannucci@chromium.org e6896b5818 Make git-cl-land wait
R=vadimsh@chromium.org
BUG=406198

Review URL: https://codereview.chromium.org/519563002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@291719 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
rmistry@google.com 52d224a24e Add the patchset id to the manual commit messages
Context is here:
https://groups.google.com/a/chromium.org/d/msg/chromium-dev/M7f9VTqrR8w/RECOX2Y5YasJ

Review URL: https://codereview.chromium.org/513763002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@291687 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
vadimsh@chromium.org 749fbd9a50 Be verbose about what's happening in 'git cl land' when pusing to pending ref.
Also reduce number of attempts and give up right away on ACL errors.

R=iannucci@chromium.org
BUG=407369,407470

Review URL: https://codereview.chromium.org/512493002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@291656 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
mmoss@chromium.org e75854552e Fix git-cl when working on branches.
This updates various assumptions to coincide with how gclient fetches
branch-heads refs from chromium repos.

R=iannucci@google.com
BUG=406858

Review URL: https://codereview.chromium.org/498013002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@291586 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
jam@chromium.org 82114c0092 Stop git cl using CQ_TRYBOTS.
This is broken for a few reasons (see bug for details). Also, this works automatically now with the analyze step.

This is a revert of r280039.

BUG=406238
R=iannucci@chromium.org, sky@chromium.org

Review URL: https://codereview.chromium.org/501503002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@291526 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
vadimsh@chromium.org 566a02afb9 Teach 'git cl land' to land to pending ref.
R=iannucci@chromium.org
BUG=404214

Review URL: https://codereview.chromium.org/496073002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@291302 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
agable@chromium.org 787e306103 Have git-cl try fail when used on a closed CL
R=phajdan.jr@chromium.org, rch@chromium.org

Review URL: https://codereview.chromium.org/494713003

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@290844 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
sheyang@chromium.org 2b34d558ba Auto find tryserver master for git cl try
BUG=352461

TEST=local tests

Review URL: https://codereview.chromium.org/447363002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@289711 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
pgervais@chromium.org b9f2751b87 Added hyphen-only options
Some options have words separated by underscores. Added options with
same name and underscores replaced by hyphens.

BUG=400953

Review URL: https://codereview.chromium.org/436963005

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@288366 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
rsesek@chromium.org 27b15a3447 Do not put an 'r' in front of the revision when commenting on Rietveld after committing.
When using `git cl land` this would result in r<hash>, which is not desirable.

R=maruel@chromium.org

Review URL: https://codereview.chromium.org/432023003

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@286931 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
mark@chromium.org 671c7a3b9d Make “git cl land” handle core.abbrev > 7.
This also fixes the confusing help message that appears when using “git
cl dcommit” in a git project. “git cl push” was totally removed in
abbaa843f4.

Review URL: https://codereview.chromium.org/437593002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@286835 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
sergeyberezin@chromium.org fbfecb72a5 Update git cl try command to mention tryserver.chromium.linux.
This is a purely cosmetic CL.

R=agable@chromium.org
BUG=395196

Review URL: https://codereview.chromium.org/415903002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@286230 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
maruel@chromium.org 85616e0e66 Do not fetch the CL description when using git cl status --fast.
This causes a network I/O, which is not fast. Also this is a non-starter in the
case of no network connectivity, causing a crash instead of completing
successfully. Until Air Canada provides on-flight internet, this is a
non-starter. #firstworldproblem.

Also fix git cl presubmit in case of lack of network connectivity.

R=stip@chromium.org
BUG=

Review URL: https://codereview.chromium.org/418293004

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@285911 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
pgervais@chromium.org abbaa843f4 Removed git cl push command
The user message says the subcommand will stop working on July 1.

BUG=

Review URL: https://codereview.chromium.org/396233002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@285586 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
maruel@chromium.org bda81551fe Remove confirmation from git cl land.
It serves no purpose, and it's annoying when the presubmit checks take more than
2-3 seconds because I always switch off to another window, so I come back
minutes later seeing this prompt waiting for me.

R=stip@chromium.org
BUG=

Review URL: https://codereview.chromium.org/407413002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@285071 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
bratell@opera.com 05fb911fc1 Revert of Allow git cl also in repos with read-only git-svn. (https://codereview.chromium.org/344013005/)
Reason for revert:
Breaks WebRTC (and possibly other projects actually using https:// for svn access).

Original issue's description:
> Allow git cl also in repos with read-only git-svn.
> 
> If you have read-only git-svn git cl would still try
> to use svn commands, which would then fail. This
> changes git cl to only use git-svn if the remote
> svn repository use the svn:// protocol. It matches
> how chromium works and it allowed me to upload a patch.
> 
> BUG=391430
> 
> R=iannucci
> 
> Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=281500

TBR=iannucci@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=391430

Review URL: https://codereview.chromium.org/375553002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@281513 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
bratell@opera.com 8e05af1084 Allow git cl also in repos with read-only git-svn.
If you have read-only git-svn git cl would still try
to use svn commands, which would then fail. This
changes git cl to only use git-svn if the remote
svn repository use the svn:// protocol. It matches
how chromium works and it allowed me to upload a patch.

BUG=391430

R=iannucci

Review URL: https://codereview.chromium.org/344013005

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@281500 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
martiniss@chromium.org 090df6ab1b Added support for git cl upload automatic trybot determination.
This is part of my intern project, which is detailed here:
  "https://docs.google.com/a/google.com/document/d/10bkzag1UUbtESPkEWHYaZtGMEEbCN5Zad72PuoRpwZE/edit#"

The idea is to have "git cl upload" annotate the CL description with a
flag like "CQ_TRYBOTS=...", which CQ will then look at to determine which
trybots to run the the given CL.

The CL for the change for CQ is at "https://chromereviews.googleplex.com/51757013/".

R=dpranke@google.com, iannucci@google.com
BUG=378097

Review URL: https://codereview.chromium.org/348473003

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@280039 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
jrobbins@chromium.org 16f10f7f4e Show an error message when the user tries to set the commit flag or add trybots to a private issue.
BUG=387088

Review URL: https://codereview.chromium.org/348933002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@279514 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
dyen@chromium.org 2a13d4f41d Correct remote URL when uploading from a repo cloned from a git_cache.
R=bradnelson@google.com, hinoka@chromium.org
BUG=None

Review URL: https://codereview.chromium.org/335723002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@276858 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
sheyang@chromium.org 152cf83378 Upload project option in 'gcl' and 'git cl' uploading commands.
BUG=374398

Review URL: https://codereview.chromium.org/298703003

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@276491 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
thestig@chromium.org 5839eb5eb4 Handle the case of git cl lint when the CL is empty.
Review URL: https://codereview.chromium.org/293153004

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@273852 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
szager@chromium.org d057f9af03 Explicitly print diff stats to sys.stdout, if possible.
This makes it possible to effectively re-route the stdout by
re-assigning sys.stdout.

BUG=

Review URL: https://codereview.chromium.org/303223005

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@273595 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
bauerb@chromium.org 279c21881c Use `git rev-list A..B` to get the list of commits to be uploaded to Gerrit by git cl.
BUG=374121

Review URL: https://codereview.chromium.org/284113005

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@270972 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
sheyang@chromium.org a656e70574 Revert of use canonical base URL for projects (https://codereview.chromium.org/271703010/)
Reason for revert:
CQ rejects all chromium projects because of this change.

Original issue's description:
> use canonical base URL for projects
> 
> BUG=372645
> R=iannucci@chromium.org, sergeyberezin@chromium.org
> 
> Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=270460

TBR=iannucci@chromium.org,sergeyberezin@chromium.org
NOTREECHECKS=true
NOTRY=true
BUG=372645

Review URL: https://codereview.chromium.org/287063002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@270803 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
sheyang@google.com 6a9ead263f use canonical base URL for projects
BUG=372645
R=iannucci@chromium.org, sergeyberezin@chromium.org

Review URL: https://codereview.chromium.org/271703010

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@270460 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
pgervais@chromium.org cee6dc461f git cl push -> git cl land
BUG=

Review URL: https://codereview.chromium.org/258983004

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@268835 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
bauerb@chromium.org f75c230c9c Warn before uploading more than one commit to Gerrit.
BUG=none

Review URL: https://codereview.chromium.org/259523006

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@267480 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
agable@chromium.org ea84ef1828 Get presubmit_support to compute diffs against a given upstream.
R=hinoka@chromium.org
BUG=368720

Review URL: https://codereview.chromium.org/269483002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@267309 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
bauerb@chromium.org c9cf90ae99 Clear configured merge-base when switching upstream.
Otherwise, the old merge-base value can confuse the hell out of `git cl upload`.

BUG=none

Review URL: https://codereview.chromium.org/252683003

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@266648 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
jrobbins@chromium.org a4c03054cb Process first branch status request before spawning threads.
BUG=341052

Review URL: https://codereview.chromium.org/213573004

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@266219 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
iannucci@chromium.org 5724c961f6 Abort `git cl push` if pushing into a local branch.
R=agable@chromium.org, szager@chromium.org
BUG=338102

Review URL: https://codereview.chromium.org/224863006

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@263202 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
iannucci@chromium.org 9e849276a0 Use get_or_create_merge_base in git-cl-upload to correctly deal with rebased
upstreams.

In the event that users are NOT using the enhanced tooling, this is equivalent
to `git merge-base "@{u}" HEAD`. In the event that they are, this will catch
the case where their parent branch got rebased, but this branch hasn't been
rebased on the parent yet.

R=agable@chromium.org, szager@chromium.org
BUG=

Review URL: https://codereview.chromium.org/224703002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@261601 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
isherman@chromium.org b5cded6951 Infer CL author and reviewer list from local state if the issue has not previously been uploaded.
R=agable@chromium.org
BUG=none

Review URL: https://codereview.chromium.org/195793021

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@259250 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
phajdan.jr@chromium.org 8da7f27a2c Add an error message when explicitly specifying bots without specifying the master
BUG=352029

Review URL: https://codereview.chromium.org/199723003

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@256972 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
tzik@chromium.org f204d4b81f Pass through "--filter" arguments from "git cl lint" to cpplint.py
Review URL: https://codereview.chromium.org/196943006

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@256776 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
thestig@chromium.org 44202a28e9 Implement git cl lint.
Review URL: https://codereview.chromium.org/134223010

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@256289 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
wittman@chromium.org 04d5a22ea9 Add git cl format --diff option to print format diff without modifying files
BUG=none

Review URL: https://codereview.chromium.org/180533012

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@255667 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
machenbach@chromium.org 58a69cbe01 Support multiple try masters when sending tries to rietveld.
BUG=

Review URL: https://codereview.chromium.org/178223016

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@254321 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
nick@chromium.org 8ca1aa3cd5 clang-format: Allow .proto files to be formatted (supported by an upcoming binary/script; this change is safe if you are running an older binary); remove warnings.
BUG=344916

Review URL: https://codereview.chromium.org/177213013

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@253295 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
thestig@chromium.org 7a54e8183a git_cl: Do not cache the relative root in Settings.
Relative root no longer makes sense after an os.chdir().
This is effectively a partial revert of r250248.

Review URL: https://codereview.chromium.org/135213006

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@250478 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
thestig@chromium.org 8b0553c1f9 Cleanup: Merge a bunch of redundent env['GIT_PAGER'] = 'cat' statements.
Additionally:
- replace some RunCommand(['git', ...]) calls with RunGit().
- replace Settings._GetConfig('rietveld.foo') _GetRietveldConfig('foo').
- merge and cache calls to git rev-parse --show-cdup.
- merge some calls to git merge-base.

Review URL: https://codereview.chromium.org/157913005

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@250248 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
thakis@chromium.org e139d95d7b Let `git cl format` format .mm files too.
(It's a bit unfortunate that we're duplicating the default -regex list in
clang-format-diff.py here :-/ But the .js and .proto stuff is probably not
quite ready yet anyhow, so I'm only adding .mm for now.)

TEST=Edit a .mm file, commit, run `git cl format`, `git diff` shows formatted
output.
TBR=iannucci@chromium.org

Review URL: https://codereview.chromium.org/152303002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@248424 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
enne@chromium.org 555cfe4777 Support passing files/directories to git cl format
BUG=none

Review URL: https://codereview.chromium.org/143903006

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@247723 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
enne@chromium.org 3b7e15c58f Add a canned clang-format presubmit check
For simplicity, the canned presubmit check just calls git cl format
directly with a new option --dry-run which does not change the files on
disk.

Because some users may not have git or clang-format might somehow have
errors, this canned check is a warning.  Additionally, if git cl format
fails with an error then the presubmit check will silently report
success to avoid spamming misconfigured users during upload.

BUG=none

Review URL: https://codereview.chromium.org/141493002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@246066 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
nick@chromium.org 0680c6978c git_cl format: allow WebKit style to be picked up from .clang-format
BUG=240309
TEST='git cl format' and 'git cl format --full' indent by 4 when run inside of third_party/WebKit
TBR=iannucci@chromium.org

Review URL: https://codereview.chromium.org/136333010

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@245694 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
nick@chromium.org 3ac1c4e320 Depot tools: use the clang-format binaries that are now included
as part of the Chromium checkout.

This follows the approach used by gn.

Changes include:
 - in-the-PATH clang-format trampoline scripts
 - clang_format.py, which finds clang-format binaries inside of Chrome
 - Hook 'git cl format' to the new binaries and scripts
 - Rearrange some code, for reuse between clang_format.py and gn.py

BUG=240309
TEST=presubmits (one failure on mac, but it fails on a clean checkout too)

Review URL: https://codereview.chromium.org/134313007

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@245074 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
rmistry@google.com 907525863f Add support for BUG_PREFIX in codereview.settings.
This change will allow projects other than chromium to specify 'BUG_PREFIX: project_name:' in their codereview.settings file.
Currently, the change is created with 'BUG=', entering a project's bug number there will point it to chromium's issue tracker. Adding a project specific prefix will make the links point to the project's issue tracker without the developer having to know about the magic prefix.

BUG=skia:1983

Review URL: https://codereview.chromium.org/132233006

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@244801 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
jochen@chromium.org 3ec0d54fd7 Indiciate the tree status in the rietveld message when bypassing hooks
BUG=none
R=iannucci@chromium.org,maruel@chromium.org

Review URL: https://codereview.chromium.org/130803004

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@244793 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
pgervais@chromium.org 91141377b8 Added --email to git_cl.py
Passing the email address used to connect to Rietveld on the command
line is useful for testing purposes, in particular with a test server.

BUG=331123

Review URL: https://codereview.chromium.org/122583003

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@244017 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
pgervais@chromium.org 87884cc015 Added --(de)activate-update options
These options have been added to the 'git cl config' subcommand.
--deactivate-update tells git cl not to update the values inside
.git/config from the codereview.settings file. --activate-update does
the opposite.

This is designed for testing/development purposes only, for example, to
be able to change the rietveld URL.

BUG=327901

Review URL: https://codereview.chromium.org/104043008

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@242943 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
fischman@chromium.org d246c9723c git_cl.py: emit a more helpful message when [git try] should be used instead of [git cl try].
BUG=330321

Review URL: https://codereview.chromium.org/107963005

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@242301 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
binji@chromium.org c3d17dd54a git_cl.py: In the "status" command, add space after the branch name.
i.e. the output looks like:

   my-branch-name : https://codereview.chromium.org/1234567
  my-other-branch : https://codereview.chromium.org/8675309

This makes it possible to double-click the branch name to use it in a subsequent
command.

BUG=none
R=maruel@chromium.org

Review URL: https://codereview.chromium.org/118613003

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@241731 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
stip@chromium.org 43064fd5bf Add support for new-style trybot specifications to git_cl.py.
BUG=278554

Review URL: https://codereview.chromium.org/106763010

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@241629 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
yujie.mao@intel.com daee1d319a Fix TypeError: cannot concatenate 'str' and 'int' objects
BUG=None
TEST=Error log print

Review URL: https://codereview.chromium.org/112123003

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@241544 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
szager@chromium.org 4ac2553282 Honor svn-remote.*.rewriteRoot option.
MatchSvnGlob uses the root url to grep for existing svn commits by
matching the git-svn-id lines in the commit messages.  If there is a
rewriteRoot config, then the git-svn-id lines will have the
rewritten url's, and the code should match against that.

R=blundell@chromium.org,maruel@chromium.org

Review URL: https://codereview.chromium.org/103053011

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@241043 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
jsbell@chromium.org aeab41a341 Add "in the commit queue" state to git cl status colors
R=dpranke@chromium.org

Review URL: https://codereview.chromium.org/94033007

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@239830 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
enne@chromium.org ff7a1fb94a Let git cl format be runnable outside of the root
This will also enable git cl format to be more easily runnable by
presubmit within a subdirectory.

BUG=none

Review URL: https://codereview.chromium.org/108353005

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@239821 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
thestig@chromium.org 00858c8486 Add git cl web command to open the current issue in the web browser.
R=maruel@chromium.org

Review URL: https://codereview.chromium.org/92533002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@238220 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
ukai@chromium.org 7044efcc7b GERRIT_PORT is no longer used in git_cl.py
BUG=maruel@chromium.org,szager@chromium.org

Review URL: https://codereview.chromium.org/90763004

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@237657 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
ukai@chromium.org 712d6105b3 Download commit-msg from gerrit-review.googlesource.com
Tell download tools/hooks/commit-msg mannually if it looks broken.

chrome-internal-reviews.googlesource.com requires
authentication to access tools/hooks/commit-msg, and
we'll get Google Sign-in page rather than expected shell script.

R=szager@chromium.org,maruel@chromium.org,ilevy@chromium.org
BUG=

Review URL: https://codereview.chromium.org/87173002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@237454 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
sbc@chromium.org 78dc9841ff Fix "git cl diff" when run on branch without an issue.
BUG=321279

Review URL: https://codereview.chromium.org/86133002

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@237110 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
pgervais@chromium.org d6617f3fcc Fixed URL to "using git" instructions
BUG=

Review URL: https://codereview.chromium.org/65933005

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@235857 0039d316-1c4b-4281-b951-d872f2087c98
11 years ago
digit@chromium.org d6ddc1cb9a Fix "git cl format" when newer clang-format version is installed.
Newer versions of clang-format-diff.py now require a -i flag to
explicitely apply edits, otherwise they just print a diff, which
make "git cl format" a no-op.

This patch fixes the issue by probing the script's help text to
see if the flag is needed. If it is, it is added automatically.

BUG=NONE
R=maruel@chromium.org

Review URL: https://codereview.chromium.org/44263004

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@231020 0039d316-1c4b-4281-b951-d872f2087c98
12 years ago
teravest@chromium.org d79d4b8e1b Make "git cl issue 0" idempotent.
Currently, running "git cl issue 0" in a client prints a confusing error
message if there's no issue assigned. This changes the code so that the issue
number isn't "unset" if it's not currently set.

BUG=

Review URL: https://codereview.chromium.org/32193016

git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@230499 0039d316-1c4b-4281-b951-d872f2087c98
12 years ago