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

Side by Side Diff: git_new_branch.py

Issue 253013004: git new-branch displays an explanatory line. (Closed) Base URL: https://chromium.googlesource.com/chromium/tools/depot_tools.git@master
Patch Set: Print message to stderr Created 6 years, 7 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
« no previous file with comments | « no previous file | subprocess2.py » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 #!/usr/bin/env python 1 #!/usr/bin/env python
2 # Copyright 2014 The Chromium Authors. All rights reserved. 2 # Copyright 2014 The Chromium Authors. All rights reserved.
3 # Use of this source code is governed by a BSD-style license that can be 3 # Use of this source code is governed by a BSD-style license that can be
4 # found in the LICENSE file. 4 # found in the LICENSE file.
5 5
6 import argparse 6 import argparse
7 import sys 7 import sys
8 8
9 import subprocess2 9 import subprocess2
10 10
(...skipping 23 matching lines...) Expand all
34 if opts.upstream in tags(): 34 if opts.upstream in tags():
35 # TODO(iannucci): ensure that basis_ref is an ancestor of HEAD? 35 # TODO(iannucci): ensure that basis_ref is an ancestor of HEAD?
36 run('checkout', '--no-track', '-b', opts.branch_name, 36 run('checkout', '--no-track', '-b', opts.branch_name,
37 hash_one(opts.upstream)) 37 hash_one(opts.upstream))
38 set_config('branch.%s.remote' % opts.branch_name, '.') 38 set_config('branch.%s.remote' % opts.branch_name, '.')
39 set_config('branch.%s.merge' % opts.branch_name, opts.upstream) 39 set_config('branch.%s.merge' % opts.branch_name, opts.upstream)
40 else: 40 else:
41 # TODO(iannucci): Detect unclean workdir then stash+pop if we need to 41 # TODO(iannucci): Detect unclean workdir then stash+pop if we need to
42 # teleport to a conflicting portion of history? 42 # teleport to a conflicting portion of history?
43 run('checkout', '--track', opts.upstream, '-b', opts.branch_name) 43 run('checkout', '--track', opts.upstream, '-b', opts.branch_name)
44
45 get_or_create_merge_base(opts.branch_name) 44 get_or_create_merge_base(opts.branch_name)
46 except subprocess2.CalledProcessError as cpe: 45 except subprocess2.CalledProcessError as cpe:
47 sys.stdout.write(cpe.stdout) 46 sys.stdout.write(cpe.stdout)
48 sys.stderr.write(cpe.stderr) 47 sys.stderr.write(cpe.stderr)
49 return 1 48 return 1
49 sys.stderr.write('Switched to branch %s.' % opts.branch_name)
50 50
51 51
52 if __name__ == '__main__': # pragma: no cover 52 if __name__ == '__main__': # pragma: no cover
53 sys.exit(main(sys.argv[1:])) 53 sys.exit(main(sys.argv[1:]))
OLDNEW
« no previous file with comments | « no previous file | subprocess2.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698