Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(116)

Side by Side Diff: git_try.py

Issue 188383002: Refactor the way that git executables are launched in depot tools. (Closed) Base URL: https://chromium.googlesource.com/chromium/tools/depot_tools.git@master
Patch Set: Created 6 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 #!/usr/bin/python
2 # Copyright (c) 2011 The Chromium Authors. All rights reserved.
3 # Use of this source code is governed by a BSD-style license that can be
4 # found in the LICENSE file.
5 """Wrapper for trychange.py for git checkout."""
6
7 import logging
8 import sys
9
10 import breakpad # pylint: disable=W0611
11
12 from scm import GIT
13 import subprocess2
14 import third_party.upload
15 import trychange
16 import git_cl
17
18
19 def GetRietveldIssueNumber():
20 try:
21 return GIT.Capture(
22 ['config', 'branch.%s.rietveldissue' % GIT.GetBranch('.')],
23 '.').strip()
24 except subprocess2.CalledProcessError:
25 return None
26
27
28 def GetRietveldPatchsetNumber():
29 try:
30 return GIT.Capture(
31 ['config', 'branch.%s.rietveldpatchset' % GIT.GetBranch('.')],
32 '.').strip()
33 except subprocess2.CalledProcessError:
34 return None
35
36
37 def GetRietveldServerUrl():
38 try:
39 return GIT.Capture(['config', 'rietveld.server'], '.').strip()
40 except subprocess2.CalledProcessError:
41 return None
42
43
44 if __name__ == '__main__':
45 args = sys.argv[1:]
46 patchset = GetRietveldPatchsetNumber()
47 if patchset:
48 args.extend([
49 '--issue', GetRietveldIssueNumber(),
50 '--patchset', patchset,
51 ])
52 else:
53 rietveld_url = GetRietveldServerUrl()
54 if rietveld_url:
55 args.extend(['--rietveld_url', GetRietveldServerUrl()])
56 try:
57 cl = git_cl.Changelist()
58 change = cl.GetChange(cl.GetUpstreamBranch(), None)
59 # Hack around a limitation in logging.
60 logging.getLogger().handlers = []
61 sys.exit(trychange.TryChange(
62 args, change, swallow_exception=False,
63 prog='git try',
64 extra_epilog='\n'
65 'git try will diff against your tracked branch and will '
66 'detect your rietveld\n'
67 'code review if you are using git-cl\n'))
68 except third_party.upload.ClientLoginError, e:
69 print('Got an exception while trying to log in to Rietveld.')
70 print(str(e))
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698