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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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=281500TBR=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
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
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
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
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
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
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
(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
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
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
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
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
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
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
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
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
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
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
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
This prevents private CLs to be automatically CC-ed to public mailing lists
unintentionally.
Review URL: https://chromiumcodereview.appspot.com/24257014
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@225925 0039d316-1c4b-4281-b951-d872f2087c98
I have clang-format-3.3 installed and it appears to default to stripping one leading slash.
BUG=294188
Review URL: https://chromiumcodereview.appspot.com/24217002
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@225705 0039d316-1c4b-4281-b951-d872f2087c98
This command shows the differences between local branch
and the last patch uploaded to rietveld. The idea being
that you can see what would be uploaded before you actually
upload.
This can useful when using 'git cl patch' to move changes
between checkouts and working from more than one machine at
once.
Review URL: https://chromiumcodereview.appspot.com/24276008
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@225552 0039d316-1c4b-4281-b951-d872f2087c98
Update subcommand to support examples, always disable format_description and
format_epilog and add colors when enabled.
R=iannucci@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/22824018
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@218180 0039d316-1c4b-4281-b951-d872f2087c98
Use the code in git_cl.py, since it was the more evolved. Add documentation
and clean up the structure along the way.
This makes it possible to easily reuse the generic subcommand handling code.
As a first step, only git_cl.py is using it. Eventually, gclient and gcl could
be switch over.
R=iannucci@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/23250002
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@218072 0039d316-1c4b-4281-b951-d872f2087c98
Having "Description: u'Foo\nBUG=1234\nR=bar@chromium.org\nReview Url: baz'"
is not actually that useful in my experience. I'd rather be able to easily
read the final CL description that is being committed.
Review URL: https://chromiumcodereview.appspot.com/23185006
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@217834 0039d316-1c4b-4281-b951-d872f2087c98
Convert monkey patching to class inheritance for OptionParser usage in:
commit_queue.py, gclient.py and trychange.py.
Monkey patching confuses the hell out of pylint.
R=jochen@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/19552004
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@213423 0039d316-1c4b-4281-b951-d872f2087c98
Instead of as branchref. Because it's an issue. Not a branchref.
Also, add myself as owner.
BUG=none
R=maruel@chromium.org
Review URL: https://chromiumcodereview.appspot.com/19997004
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@213387 0039d316-1c4b-4281-b951-d872f2087c98
Add cache for issue properties.
Add --fast option in case the HTTP requests become an issue.
Everyone loves colors:
- White means no issue is associated with the branch.
- Red means no email was sent to request a review. Also red if the issue doesn't
exist anymore.
- Blue means the issue was not LGTM'ed yet.
- Green means the issue was LGTM'ed and is likely ready to commit or be CQ'ed.
R=iannucci@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/19967004
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@213265 0039d316-1c4b-4281-b951-d872f2087c98
Reduce the number of conditions and use more early exits to reduce the number of
code paths.
R=iannucci@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/19463011
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@213173 0039d316-1c4b-4281-b951-d872f2087c98
Git introduced a --3way argument to `apply` in version 1.7.12 [1]. This
provides a much nicer way to apply issues from Rietveld.
After this change, `git cl patch` will add --3way after checking the git
version for support.
[1] f247b10aa0
BUG=None
TEST=Ran `git cl patch <issue>` with both clean and unclean patches,
also checked behaviour of --reject is preserved.
R=maruel@chromium.org
Review URL: https://codereview.chromium.org/18966004
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@210695 0039d316-1c4b-4281-b951-d872f2087c98
--no-pager looks ugly in logs and output and makes commands harder to
read. Setting an environment variable is better.
This is a followup to https://chromiumcodereview.appspot.com/14104005/
which added --no-pager.
Review URL: https://chromiumcodereview.appspot.com/18173003
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@210503 0039d316-1c4b-4281-b951-d872f2087c98
basic.sh expects "work: None", but "work: " is printed instead, which breaks
presubmit. This fixes it.
BUG=
R=dpranke@chromium.org
Review URL: https://codereview.chromium.org/17763004
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@208799 0039d316-1c4b-4281-b951-d872f2087c98
Look for either a unique prefix or for an approximation of the shortest
Levenshtein distance. So all of these will resolve to 'git cl upload':
git cl upl
git cl uplaod
These won't resolve:
git cl up # it shares prefix with 'upstream'
git cl uplao # not similar enough
Also align help against longest command instead of hard coded '10'. The help
page was distorded.
R=iannucci@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/17272002
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@206820 0039d316-1c4b-4281-b951-d872f2087c98
I have a large rename change and it's impossible to upload because the size of the CC field is above the maximum 2000 characters in Reitveld.
Review URL: https://chromiumcodereview.appspot.com/16366008
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@205323 0039d316-1c4b-4281-b951-d872f2087c98
> Default to using --3way when using `git cl patch`.
>
> Resolving conflicts is much more fun this way.
>
> BUG=None
> TEST=Ran `git cl patch <issue>` with both clean and unclean patches, also checked behaviour of --reject is preserved.
> R=maruel@chromium.org
>
> Review URL: https://codereview.chromium.org/16211005TBR=tapted@chromium.org
Review URL: https://codereview.chromium.org/15786008
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@204978 0039d316-1c4b-4281-b951-d872f2087c98
Resolving conflicts is much more fun this way.
BUG=None
TEST=Ran `git cl patch <issue>` with both clean and unclean patches, also checked behaviour of --reject is preserved.
R=maruel@chromium.org
Review URL: https://codereview.chromium.org/16211005
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@204671 0039d316-1c4b-4281-b951-d872f2087c98
76 columns is fine for most patches but reverts will eat another
4 spaces in indentation. For the sake of revert clarity this reference
line is reduced to 72 columns.
Review URL: https://chromiumcodereview.appspot.com/16152005
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@203530 0039d316-1c4b-4281-b951-d872f2087c98
Adds an extra line to the default text description to help judge whether the
76 character recommended limit is being passed.
Review URL: https://chromiumcodereview.appspot.com/15670012
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@203314 0039d316-1c4b-4281-b951-d872f2087c98
This patch fixes the implementation as follows:
1/ Fix '--full' option to check for all changes in the
current branch relative to upstream. The old code only
considered currently modified files, which made little
sense.
2/ Fix '--full' option to apply Chromium style too.
3/ Use a proper source file filter. The original code used
".*.cc .*.cpp .*.h" as the filter, which didn't catch anything !?
4/ Add --no-ext-diff to make it work with custom "git diff" handlers.
R=agable@chromium.org, maruel@chromium.org, pliard@chromium.org
BUG=NONE
Review URL: https://chromiumcodereview.appspot.com/14942012
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@200832 0039d316-1c4b-4281-b951-d872f2087c98
Helps scanning faster. colorma is already slightly used by gclient but wasn't
by git-cl yet.
Update a unit test to be stricter, it was caught in the cross fire as colorma
hooks sys.stdout and stderr.
R=iannucci@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/15025003
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@198689 0039d316-1c4b-4281-b951-d872f2087c98
As per the discussion in
https://groups.google.com/a/chromium.org/forum/?fromgroups=#!topic/chromium-dev/Hl2QPNQ9E5o,
this CL adds a 'git cl format' command. Users may use it at their own
discretion. By default, it generates a diff against the local tracking
(upstream) branch and runs clang-format-diff on that diff. When given the
'--full' flag, it instead identifies all .cc, .cpp, and .h files in the diff and
runs clang-format on the entirety of each of those files.
Review URL: https://chromiumcodereview.appspot.com/14629012
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@198477 0039d316-1c4b-4281-b951-d872f2087c98
It is somewhat surprising when git-cl, which acts as a git subcommand, launches
a different editor. In particular, git has a config option (core.editor) which
specifies the editor that should be used. Since we already respect $GIT_EDITOR,
it makes sense for git-cl to respect core.editor and $VISUAL as well.
R=maruel@chromium.org
BUG=237504
Review URL: https://chromiumcodereview.appspot.com/14854003
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@198101 0039d316-1c4b-4281-b951-d872f2087c98
This makes the commit logs much more useful for a build sheriff. Not only he
sees who committed the CL but see who approved it directly at the log. This
should help build sheriffs when they fail to contact the author and want to
fallback on the reviewer for quick questions.
R=dpranke@chromium.org
BUG=76730
Review URL: https://chromiumcodereview.appspot.com/13800021
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@196786 0039d316-1c4b-4281-b951-d872f2087c98
Make it more consistent across the tool. Using \s also includes \n, which
confuses the tool.
Add more tests.
R=iannucci@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/14265007
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@195214 0039d316-1c4b-4281-b951-d872f2087c98
s/This will displayed/This will be displayed/g
BUG=
Review URL: https://chromiumcodereview.appspot.com/13811053
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@194907 0039d316-1c4b-4281-b951-d872f2087c98
If no `--local` option is passed to git config command line tool, it will relies
on the local repository and then to the user configuration ($HOME/.gitconfig).
In case the user has - for some reason - a svn repository configured in this
user configuration, the checking: `git config --get-regexp ^svn-remote\.` will
accuse that there is svn repo and so the `git cl tool`. This patch just add
the option `--local` to the git config command line tool, avoiding this
situation.
R=maruel@chromium.org,dpranke@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/13884014
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@193987 0039d316-1c4b-4281-b951-d872f2087c98
Include all the preparatory work to eventually update the R= line to match the
actual reviewers.
The goal here is that ChangeDescription becomes the official implementation for
handling and modifying commit messages accross git-cl, gcl and the commit queue.
This change does slightly tweak the spacing between the hot lines.
It is done on purpose to make them consistent.
R=dpranke@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/13741015
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@193514 0039d316-1c4b-4281-b951-d872f2087c98
It makes sure the resulting options.reviewers and options.cc are internally
consistent by splitting comma separated items.
R=iannucci@chromium.org
BUG=
Review URL: https://chromiumcodereview.appspot.com/13843002
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@193496 0039d316-1c4b-4281-b951-d872f2087c98
to rietveld for the first time. This came up in a discussion with Nico about
changing -m for -t in the git cl upload command.
BUG=None
Review URL: https://chromiumcodereview.appspot.com/12965015
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@190399 0039d316-1c4b-4281-b951-d872f2087c98
Move watchlist generation out of RunHooks so that bypass-hooks
does not skip watchlists.
BUG=163406
Review URL: https://chromiumcodereview.appspot.com/12295004
git-svn-id: svn://svn.chromium.org/chrome/trunk/tools/depot_tools@185979 0039d316-1c4b-4281-b951-d872f2087c98